▹ 데이터 처리 라이브러리/Apache POI

[Apache POI] 숨겨진 시트인지 여부 확인

기록원장 2024. 12. 9. 01:56
반응형

전체 시트 중 표시된 시트에 대한 처리를 할 경우(예를 들어 해당 시트의 값을 처리한다던지 등), Workbook의 getNumberOfSheets() 메서드로 전체 시트수를 가져온 뒤 시트수만큼 반복문을 돌면서 isSheetHidden() 메서드로 해당 시트가 숨겨진 시트인지 아닌지를 판단하면서 처리하면 된다.

메소드명 설명 파라미터 (타입) 반환값 (타입)
getNumberOfSheets() 전체 시트 수 반환
(비표시로 숨겨진 시트도 포함)
- 시트수
(int)
isSheetHidden() 숨겨진 시트인지 여부 반환
(숨겨진 시트 인 경우 true 반환)
체크 대상 시트의 인덱스
(int)
숨겨진 시트인지 여부
(boolean)

 

try (FileInputStream fis = new FileInputStream(new File(파일경로))) {
    Workbook workbook = WorkbookFactory.create(fis);

	//전체 시트수(숨겨진 시트도 포함)
    int numberOfSheets = workbook.getNumberOfSheets();

    for (int i = 0; i < numberOfSheets; i++) {
    	//시트가 숨겨져 있는지 여부 반환
        boolean isHidden = workbook.isSheetHidden(i);
        if (isHidden) {
		//숨겨진 시트인 경우
        } else {
		//표시된 시트인 경우
        }
    }
} catch (IOException e) {
    e.printStackTrace();
}

 

참조
isSheetHidden
https://poi.apache.org/apidocs/dev/org/apache/poi/ss/usermodel/Workbook.html#isSheetHidden-int-
getNumberOfSheets
https://poi.apache.org/apidocs/dev/org/apache/poi/ss/usermodel/Workbook.html#getNumberOfSheets--

 


글 내용 중 잘못된 부분이 있거나, 첨부하실 내용이 있으시면 댓글로 남겨주세요. 공부하는데 많은 도움이 됩니다.
-- 기억의 유효기간은 생각보다 짧다. --
반응형