JakartaPOIとJExcelAPI

色んなExcelテンプレに吐き出すということをしなきゃいけないので、ちょこちょこ試してます。
ソースが簡潔になるのでJExcelAPIの方がお気に入りでしたが、テンプレートをコピーするという部分で大きな壁にぶち当たってしまった。
今のところPOIを使うことになりそう。

■JExcelAPI

テンプレートのワークブックをゲットしてコピーする
//テンプレート読み込み
Workbook template = Workbook.getWorkbook(new File("template.xls"));
//コピー作成
WritableWorkbook copy = Workbook.createWorkbook(new File("copy.xls"), workbook);
//(処理)


×チェックボックスなどのオブジェクトはコピーされない
×セルの中央寄せなどは引き継がれない
×「〜」などが文字化けする
○日本語の混じった式でも文字化けしない


■POI

//テンプレート読み込み
POIFSFileSystem template
= new POIFSFileSystem(new FileInputStream("template.xls"));
//ワークブック読み込み
HSSFWorkbook wb = new HSSFWorkbook(template);
//(処理)
//コピーに書き込み
FileOutputStream copy=new FileOutputStream("copy.xls");
wb.write(copy);


×式に日本語が混じると文字化けする
○オブジェクトやセルの書式は引き継いでくれる