Skip to content
[Apache poi]そろそろXSSFがデフォルトでよいんじゃないかな
java-tips-scala-tips
2019-10-14

賛否はあるもののお客さんからはExcel等でドキュメントを要求されることが多いことも事実。なのでApache poi(Apacheで出しているMS Excel.Word等MS文書をJavaで操作するライブラリ)などでドキュメント自動生成みたいなところを結局最近やっているのだが、Excel操作ライブラリはXSSF系APIとHSSF系APIに分かれている。

HSSFは拡張子xlsの旧形式、XSSFは拡張子xlsxの今の形式用のAPI。Excelも長いのでAPIが2系統に分かれているのは仕方ないと思うものの、そろそろXSSFがデフォルトでよいんじゃないかなぁ。

Workbook wb = WorkbookFactory.create("file.xslx")

XSSFWorkbook wb = (XSSFWorkbook)WorkbookFactory.create("file.xslx")
または
XSSFWorkbook wb = new XSSFWorkbook("file.xslx")
Workbook wb = WorkbookFactory.create("file.xslx")

XSSFWorkbook wb = (XSSFWorkbook)WorkbookFactory.create("file.xslx")
または
XSSFWorkbook wb = new XSSFWorkbook("file.xslx")

IDEのコンテキストメニューでAPIがさくっと出ないし、ネットの情報でもHSSFの情報と混じって小一時間悩むし。