Apache POIでExcelファイルを扱う時のベストプラクティス(自分流)

Apache POIでExcelファイルを扱う時のベストプラクティス(自分流)

既存のファイルを読み込む場合

既存のファイルを読み込む場合はWorkbookFactory#createメソッドを利用すれば、xlsxlsx形式を自動判定してワークブックを開くことができる。

File file = new File("example.xlsx");
try (Workbook workbook = WorkbookFactory.create(file)) {
    // TODO
}

新規ファイルを作成する場合

新規ファイルを作成する場合は(基本的に)一度書き込んだ行やセルを再度操作することは考えづらいため、SXSSFWorkbookを使用するのが望ましい。

File file = new File("example.xlsx");
try (Workbook workbook = new SXSSFWorkbook()) {
    // TODO

    // ファイル出力
    try (FileOutputStream fileOutputStream = new FileOutputStream(file)) {
        workbook.write(fileOutputStream);
    }
}