[java] Java Apache POI를 사용하여 Excel 파일의 행 높이 설정하기

Apache POI는 Java에서 Microsoft Office 파일을 조작하는 라이브러리입니다. 이 라이브러리를 사용하면 Excel 파일을 생성, 수정, 읽기 등의 작업을 할 수 있습니다. 이번에는 Apache POI를 사용하여 Excel 파일의 행 높이를 설정하는 방법에 대해 알아보겠습니다.

준비 사항

먼저, Apache POI를 다운로드하여 프로젝트에 추가해야 합니다. Apache POI의 최신 버전은 여기에서 다운로드할 수 있습니다. 다운로드한 JAR 파일을 프로젝트의 라이브러리 경로에 추가합니다.

Excel 파일 열기

FileInputStream file = new FileInputStream(new File("sample.xlsx"));
Workbook workbook = new XSSFWorkbook(file);
Sheet sheet = workbook.getSheetAt(0);

위 코드는 “sample.xlsx”라는 Excel 파일을 열고 첫 번째 시트를 선택하는 코드입니다. 실제로 사용하는 Excel 파일의 이름과 위치에 맞게 수정해야 합니다.

행 높이 설정하기

Apache POI를 사용하여 Excel 파일의 행 높이를 설정하는 방법은 다음과 같습니다.

Row row = sheet.getRow(0);

row.setHeightInPoints(20); // 높이를 포인트 단위로 설정
// row.setHeight(500); // 높이를 픽셀 단위로 설정

Cell cell = row.getCell(0);
CellStyle style = workbook.createCellStyle();
style.setVerticalAlignment(VerticalAlignment.CENTER); // 행 내의 셀을 수직 중앙 정렬

Font font = workbook.createFont();
font.setBold(true); // 볼드체 설정
style.setFont(font);

cell.setCellStyle(style);

위 코드는 첫 번째 행을 선택하고 setHeightInPoints() 메서드를 사용하여 행의 높이를 포인트 단위로 설정하는 예시입니다. setHeight() 메서드는 픽셀 단위로 높이를 설정할 수도 있습니다.

같은 방법으로 setCellStyle() 메서드를 사용하여 셀의 스타일을 설정할 수 있습니다. 위 예시에서는 수직으로 셀을 중앙 정렬하고, 볼드체로 텍스트를 표시하도록 스타일을 설정합니다.

Excel 파일 저장 및 종료

FileOutputStream fileOut = new FileOutputStream("updated_sample.xlsx");
workbook.write(fileOut);
fileOut.close();
workbook.close();

위 코드는 업데이트된 Excel 파일을 저장하고, 열린 파일과 연결된 자원을 정리하는 과정입니다. updated_sample.xlsx에 업데이트된 파일의 이름을 지정하고, 실제로 사용하는 위치와 이름에 맞게 수정해야 합니다.

결론

이제 Java Apache POI를 사용하여 Excel 파일의 행 높이를 설정하는 방법을 알아보았습니다. 이를 응용하여 다양한 Excel 파일 조작 작업을 수행할 수 있습니다. 자세한 내용은 Apache POI의 공식 문서를 참조하면 더 많은 기능을 활용할 수 있습니다.

참고 자료