[java] Apache POI를 사용하여 Excel 파일의 시트 보호 읽기

Apache POI는 Java에서 Excel 파일을 조작하는 데 사용되는 라이브러리입니다. 이 라이브러리를 사용하면 Excel 파일을 생성, 수정 및 읽을 수 있습니다. 이제 Apache POI를 사용하여 Excel 파일의 시트 보호를 읽는 방법에 대해 알아보겠습니다.

1. Apache POI 의존성 추가하기

먼저, Apache POI를 사용하기 위해 프로젝트에 의존성을 추가해야 합니다. Maven을 사용한다면, pom.xml 파일에 다음 의존성을 추가합니다.

<dependencies>
  <dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.1.2</version>
  </dependency>
  <dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.1.2</version>
  </dependency>
</dependencies>

Gradle을 사용한다면, build.gradle 파일에 다음 의존성을 추가합니다.

dependencies {
    implementation 'org.apache.poi:poi:4.1.2'
    implementation 'org.apache.poi:poi-ooxml:4.1.2'
}

의존성을 추가한 후 프로젝트를 다시 빌드해야 합니다.

2. Excel 파일에서 시트 보호 읽기

이제 Apache POI를 사용하여 Excel 파일의 시트 보호를 읽는 방법에 대해 알아보겠습니다. 다음은 예제 코드입니다.

import org.apache.poi.ss.usermodel.*;

import java.io.File;
import java.io.FileInputStream;

public class ReadProtectedSheetExample {

    public static void main(String[] args) {
        try {
            // 읽을 Excel 파일의 경로
            String filePath = "경로/파일명.xlsx";

            // Excel 파일 열기
            FileInputStream fileInputStream = new FileInputStream(new File(filePath));
            Workbook workbook = WorkbookFactory.create(fileInputStream);

            // 첫 번째 시트 가져오기
            Sheet sheet = workbook.getSheetAt(0);

            // 시트가 보호되었는지 확인
            boolean isProtected = sheet.getProtect();
            
            if (isProtected) {
                System.out.println("시트는 보호되어 있습니다.");
            } else {
                System.out.println("시트는 보호되어 있지 않습니다.");
            }

            // 파일과 스트림 닫기
            workbook.close();
            fileInputStream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

위의 코드에서 filePath 변수를 읽을 Excel 파일의 경로로 설정해야 합니다. 코드를 실행하면 첫 번째 시트의 보호 상태를 확인하고 결과를 출력합니다.

Apache POI를 사용하여 Java에서 Excel 파일의 시트 보호를 읽는 방법에 대해 알아보았습니다. 이를 사용하여 Excel 파일을 조작하는 다양한 작업을 수행할 수 있습니다.

참고 자료