2009年9月14日月曜日

groovyとpoiでExcelファイルを出力する

poi は java から Microsoft Office ファイルを扱うライブラリ。これでエクセルファイルを作ってみる。
環境はMacBook(CoreDuo)、MacOSX10.5.8、java v1.5.0_19、groovy v1.6.4。

まず、poiのbinファイルをこちらから入手する。
今回は、poi-bin-3.0-FINAL-20070503.zip をダウンロードした。
解凍して、poi-3.0-rc4-20070503.jar を ~/.groovy/lib/ の中に入れて準備完了。

以下コード。
import org.apache.poi.hssf.usermodel.*;

def myVal=[
["あああ","いいい","ううう"],
["かかか","ききき","くくく"],
["さささ","ししし","すすす"]
]

//新規ワークブック作成
HSSFWorkbook myWb = new HSSFWorkbook();
//新規シート作成
HSSFSheet mySheet = myWb.createSheet();

for(i in 0..<myVal.size){
//新規行作成
HSSFRow myRow = mySheet.createRow(i);
for(j in 0..<myVal[i].size){
//新規セル作成
HSSFCell myCel = myRow.createCell((short)j);
myCel.setEncoding(HSSFCell.ENCODING_UTF_16);
myCel.setCellValue(myVal[i][j]);
}
};

//作成したワークブックを保存する
new File("Test.xls").withOutputStream{myWb.write(it)}

poi.groovy として保存、保存したディレクトリに移動して
groovy poi.groovy
でエクセルファイルができた。簡単。

0 件のコメント: