アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつもお世話になっています。

Jakarta POI のHSSFを使って、エクセルの帳票を作っているのですが
フッターに日本語を使用すると文字化けして困っています。
フォント指定も行ってみたのですが、文字化けは直りませんでした。
フォントの指定が悪いのかとは思いますが、お手上げ状態です。
どうかご教授ください。

HSSFFooter footer = wsheet.getFooter();
footer.setCenter(HSSFFooter.page()+" / "+HSSFFooter.numPages());//ページ番号
footer.setRight(HSSFFooter.font("MS ゴシック", "標準") + HSSFFooter.fontSize((short) 11) + title);//タイトル
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
footer.setRight("Toujitsu Nyukin " + sdf.format(new Date()));

A 回答 (2件)

連投申し訳ありません。


パッチ(http://issues.apache.org/bugzilla/show_bug.cgi?i …
ソース("Patches and testcases are zipped."というリンク先のファイル)
をPOIライブラリの同名ファイルと差し替えることで
ヘッダ/フッタの日本語出力できました。

POIライブラリを一度コンパイルしなおす必要があるので
ソースがなければ poi-src-2.5.1-final-20040804.zip を公式からダウンロードしてきてください。
あとは解凍して、ソースを差し替えてコンパイル。
再びjarファイルとして元のPOIライブラリと差し替えれば、
既存の帳票ソース(?)を書き換える必要なく日本語が出力できるはずです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
POIライブラリを修正して、問題無く日本語が出力できました。
ありがとうございました!

お礼日時:2006/10/25 17:13

POIのHSSFHeader/HSSFFooterはマルチバイト対応じゃないらしいです。



参考URLで紹介されてる
http://issues.apache.org/bugzilla/show_bug.cgi?i …
で、有志の方が作ったマルチバイト対応のパッチがあるとのことです。

パッチの中身をチラっと見ましたが
パッチにはJavaソース(HeaderRecord.java/FooterRecord.java)が入っており、その配布場所では使い方を説明しているのでしょうが
英語だった為は分かりませんでした。英語苦手…orz

参考になれば。

参考URL:http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.ph …
    • good
    • 0
この回答へのお礼

回答ありがとうございます!
Jakarta POIのドキュメントを見てはいたのですが、
マルチバイトに関する記述は見つけられませんでした・・・
もっとも、私も英語苦手なので分かってないだけでしょうがorz
URL参考になりました。

お礼日時:2006/10/25 09:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!