XLSBeansで文字化け発生

XLSBeansを使っていて、”×”(バツ、かける)の入ったセルが、読み込んだ後では”ラ”に文字化けする問題が発生しました。

解決策がないかググってみるとこんな資料を見つけました。

JExcelApi - blanco Framework システム構成←[注意]パワーポイントへのリンクです

この資料によると、

文字化けはXLSBeansが内部で使っているJExcelApiの問題のようで

というケースで発生するようです。

確認してみると、確かに”×”は上記範囲内の\u00d7でした。

解決策

上記資料によると、WorkbookSetting#setEncoding()に”ISO8859_1”を指定すればよいということなので、XLSBeans#load()の中でWorkbookSettingのインスタンスを生成した後に

settings.setEncoding("ISO8859_1");

という処理を追加したソースをビルドしたものを使えば、無事文字化けせずに”×”が扱えました。

XLSBeansについて

今回初めて使いましたが、エクセルからオベジェクトへのマッピングアノテーションで簡単に出来るので、エクセル読み込みが必要な時は今後も使っていきたいプロダクトでした。

欲を言えば、S2Csvみたいにバリデーションとコンバート処理を差し込む方法があれば、自分的にはパーフェクトなプロダクトです。

[Amateras]XLSBeans 1.1.0をリリースしました