XMLinux
/ Java
/ Jawk で良いんじゃない?
/ Jawk で Excel
〜 2009-03-06 更新
Jawk で Excel
JExcelApi
Jawk では JExcelApi を使って Excel ファイルの読み書きができます。
JExcelApi のダウンロード
JExcelApi は、 ダウンロードページ(英語) の Download から、ダウンロードできます。 JExcelApi の最新版は 2.6.9 (Java 1.4) です。 jexcelapi_2_6_9_1.4.tar.gz または jexcelapi_2_6_9_1.4.zip を ダウンロードしてください。
ダウンロードしたファイルを展開して、 その中の jxl.jar というファイルを使います。
Excel ファイルを作成してみる
次の xls.jawk はプログラム例です。 out.xls というファイルを作成します。
・xls.jawk
import jxl.*
import jxl.write.*
BEGIN {
f = new java.io.File( "out.xls" )
wb = Workbook.createWorkbook( f )
sheet = wb.createSheet( "シート1" , 0 )
sheet.addCell( new Label( 0 , 2 , "Jawkとjxl" ) )
sheet.addCell( new Number( 2 , 4 , 1234.5678 ) )
sheet.addCell( new DateTime( 1 , 2 , new java.util.Date() ) )
wb.write()
wb.close()
}
Windows での実行例
上のプログラム例の xls.jawk と ダウンロードした jxl.jar と jawk.0_14.jar と 次の jawkf.bat の 4 つのファイルを C:\jawk フォルダに置きます。
・jawkf.bat@echo off set CP= set CP=%CP%C:\jawk\jawk.0_14.jar; set CP=%CP%C:\jawk\jxl.jar; java -cp "%CP%" org.jawk.Awk -f %1
次のように xls.jawk を実行すると、 C:\jawk\out.xls が作成されます。
C:\jawk>jawkf.bat xls.jawk
Excel ファイルを読んでみる
次の xls2.jawk はプログラム例です。 out.xls というファイルを読み込んで、 内容をタブ区切りで出力します。
・xls2.jawk
import jxl.*
import jxl.write.*
BEGIN {
f = new java.io.File( "out.xls" )
ws = new WorkbookSettings()
ws.setGCDisabled( true )
wb = Workbook.getWorkbook( f , ws )
sheet = wb.getSheet( 0 )
for ( i = 0 ; i < sheet.getRows() ; i++ ) {
row = sheet.getRow( i )
for ( j = 0 ; j < row.length ; j++ ) {
printf "%s\t" , row[ j ].getContents()
}
print
}
wb.close()
}
関連リンク
- Jawk - AWK for Java (英語)
- JExcelApi (英語)
- エクセルファイル読み込みサンプル
- Java Excel API(読み込み機能)
- Java Excel API(書き込み機能(1))
- Excelの仕様書→Javaソース・DDL自動生成
- JavaプログラムからWord/Excel文書を操作する
Office 2003で追加されたXMLフォーマットWordprocessingML、SpreadsheetMLの使い方
他の Java のクラスを使った例は、 こちらをご覧ください。
アフィリエイトでのご支援を歓迎しています
【Amazon】
【セブンアンドワイ ヤフー店】
便利で楽しいボタンが続々登場!Yahoo!ツールバー
国産タブブラウザ Lunascape を使ってみよう!
- Ask.jpツールバー
メール、メッセンジャーでディズニーキャラのアイコンが使える!
無料オンラインRPG『眠らない大陸クロノス』
i LUMINE
- Yahoo!ショッピング
ホットペッパー.jpでレストラン予約
一休.comレストラン
マネックス証券で資産運用を始めよう!口座開設・維持費無料!
- ジャパンネット銀行 新規口座開設
インターネット決済の常識! 豊富なサービスと便利な機能で大活躍!
【Amazon】

プログラミング言語AWK (新紀元社情報工学シリーズ)
sed & awk デスクトップリファレンス
AWKを256倍使うための本 (Ascii 256倍)- sed & awkプログラミング (Nutshell handbooks)
【セブンアンドワイ ヤフー店】
