POI 3.0.1-FINAL
普通に
HSSFWorkbook = new HSSFWorkbook(new FileInputStream(file));
って感じで、Excelファイルを開くと、
org.apache.poi.hssf.record.RecordFormatException: Unable to construct record instance at org.apache.poi.hssf.record.RecordFactory.createRecord(RecordFactory.java:191) at org.apache.poi.hssf.record.RecordFactory.createRecords(RecordFactory.java:115) at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:205) at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:257) at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:238)
ってなExceptionが出た。
なんで?って、Excelファイルでなんか小細工しとるかな?と調べてみる。
セルを結合してるくらいかなぁ?と、見てたらセルに名前を定義してたんで、それを削除してみたらOKになった。
と、何気に名前が全角文字だったので、試しに半角文字で名前付けたらOKになった。
文字コードの問題???
んで、POIのAPIにセルの名前でセルのオブジェクトが取得できるようなメソッドができれば、セルの名前をフィールド名としたりすれば、JasperReportsやSVFなんかと同じ感覚で帳票作成ができるのにね。