[java] Apache POI를 사용하여 Excel 파일의 셀 나누기

Excel 파일은 데이터를 효율적으로 저장하고 관리하는 데 매우 유용한 포맷입니다. Apache POI는 Java에서 Excel 파일을 다루기 위한 라이브러리입니다. 이번 글에서는 Apache POI를 사용하여 Excel 파일의 셀을 나누는 방법을 알아보겠습니다.

1. Apache POI 라이브러리 추가하기

먼저 Maven 또는 Gradle을 사용하여 Apache POI 라이브러리를 추가합니다. 아래는 Maven을 사용하는 경우의 예시입니다.

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

Dependency를 추가한 후 프로젝트를 다시 빌드하면 Apache POI 라이브러리가 포함되어 있을 것입니다.

2. Excel 파일의 셀 나누기

Apache POI를 사용하여 Excel 파일의 셀을 나누는 방법은 간단합니다. 다음은 예시 코드입니다.

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

public class ExcelCellSplitter {
    public static void main(String[] args) throws Exception {
        // Excel 파일 로드
        Workbook workbook = WorkbookFactory.create(new File("path/to/excel/file.xlsx"));
        
        // 시트 선택
        Sheet sheet = workbook.getSheetAt(0);
        
        // 특정 셀의 값을 가져옴
        Cell cell = sheet.getRow(0).getCell(0);
        String cellValue = cell.getStringCellValue();
        
        // 셀 값 분리
        String[] splitValues = cellValue.split(",");
        
        // 분리된 값들을 셀에 저장
        Row row = sheet.getRow(0);
        for (int i = 0; i < splitValues.length; i++) {
            Cell newCell = row.createCell(i);
            newCell.setCellValue(splitValues[i]);
        }
        
        // 변경된 내용을 Excel 파일에 저장
        FileOutputStream fileOut = new FileOutputStream("path/to/excel/file.xlsx");
        workbook.write(fileOut);
        fileOut.close();
        
        // 메모리 해제
        workbook.close();
    }
}

위 코드는 지정된 Excel 파일의 첫 번째 시트에서 첫 번째 셀의 값을 가져와서 콤마(,)로 구분된 값들로 나눈 다음, 각각의 값을 셀에 저장하는 예시입니다. 변경된 내용은 원본 Excel 파일에 덮어씌워집니다.

실제로 사용할 때는 Excel 파일의 경로와 Sheet의 인덱스, 셀의 위치 등을 적절히 수정해야 합니다.

결론

Apache POI를 사용하면 Java에서 Excel 파일을 다루는 것이 매우 간단해집니다. 이번 글에서는 Apache POI를 사용하여 Excel 파일의 셀을 나누는 방법을 알아보았습니다. 여러분들도 이를 활용하여 Excel 파일을 쉽게 다룰 수 있기를 바랍니다.

참고: Apache POI - Java API to Access Microsoft Format Files