[java] Apache POI를 이용한 Excel 파일 편집

이번에는 Java에서 Apache POI를 활용하여 Excel 파일을 편집하는 방법에 대해 알아보겠습니다. Apache POI는 Java에서 Microsoft Office 포맷인 Excel, Word, PowerPoint 등을 다루기 위한 라이브러리입니다.

1. Apache POI 라이브러리 추가

먼저, Maven이나 Gradle과 같은 빌드 도구를 사용하여 프로젝트에 Apache POI 라이브러리를 추가해야 합니다. 아래는 Maven을 사용하는 예시입니다.

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>5.0.0</version>
</dependency>

2. Excel 파일 열기

편집할 Excel 파일을 열기 위해 Workbook 객체를 생성해야 합니다. 아래는 예시 코드입니다.

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

public class ExcelEditor {
    public static void main(String[] args) {
        try {
            // Excel 파일 열기
            Workbook workbook = WorkbookFactory.create(new File("path/to/excel.xlsx"));
            
            // 편집 작업 수행
            
            // 엑셀 파일 저장
            workbook.write(new FileOutputStream("path/to/edited_excel.xlsx"));
            
            // 사용 후 리소스 정리
            workbook.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

3. Excel 데이터 편집

Apache POI를 사용하여 Excel 파일의 데이터를 편집할 수 있습니다. 예를 들어, 원하는 셀에 값 설정, 스타일 변경, 시트 추가 등이 가능합니다. 아래는 몇 가지 예시입니다.

3.1. 값 설정

// 시트 선택
Sheet sheet = workbook.getSheetAt(0);

// 셀 선택
Row row = sheet.getRow(0);
Cell cell = row.createCell(0);

// 값 설정
cell.setCellValue("Hello, Excel!");

3.2. 스타일 변경

// 스타일 생성
CellStyle style = workbook.createCellStyle();

// 폰트 설정
Font font = workbook.createFont();
font.setBold(true);
font.setColor(IndexedColors.RED.getIndex());
style.setFont(font);

// 셀에 스타일 적용
cell.setCellStyle(style);

3.3. 시트 추가

// 시트 생성
Sheet newSheet = workbook.createSheet("New Sheet");

4. Excel 파일 저장

Excel 파일을 편집한 후에는 변경된 내용을 저장해야 합니다. Workbook 객체의 write() 메소드를 사용하여 저장할 수 있습니다.

// 엑셀 파일 저장
workbook.write(new FileOutputStream("path/to/edited_excel.xlsx"));

마무리

위의 예시 코드를 참고하여 Apache POI를 사용하여 Java에서 Excel 파일을 편집하는 방법을 알아보았습니다. Apache POI의 다양한 기능을 활용하면 복잡한 Excel 편집 작업도 쉽게 처리할 수 있습니다.

더 자세한 정보를 원하시면 Apache POI 공식 문서를 참고하십시오.