戻る


javaでOpenOffice Calcのファイルを読む

サンプルプログラム => OdsReader.lzh

javaでOpenOffice Calcのodsファイルを読むサンプルです。 OpenOffice Basicには馴染めないし、BeanShellの情報は少ないのでjavaでコーディングして読んでみました。 セルの値とセルのスタイル名くらいしか読めませんが、簡単なメモからhtmlを出力する程度なら出来そうです。

サンプルでは次の様なCalcドキュメントを読んで、

[img]対象odsのスクリーンショット

次の様なhtmlのテーブルを吐き出します。(CSSは別に書く)

表の読テスト
複雑なAA
1Ath
1でも、なんとか
112変換できます。
th3
リンクテスト ... 片鱗懐古のページへ移動

確認した環境は以下の通りです。

OSWindowsXP home edition
jdkversion 1.6.0
OpenOffice CalcOpenOffice.org 2.4.1
OpenOffice.org 3.0.0 ※
  1. odsファイルを開きシートにアクセス
  2. 座標でセルにアクセス
  3. セルの値を読む
  4. htmlで出力する
  5. スタイルについての補足

注意事項

サンプルコードは仕様書を熟読して理解したうえで作ったものではありません。 テストも十分にしていない殴り書きのコードです。 それを踏まえて使ってください。

※ OpenOffice3.0になってOpenDocumentのバージョンが1.1から1.2に変更になりました。 このページに書いてあるOpenDocumentの仕様に関わる部分については影響が無さそうです。 ただし、スタイル名の記録箇所などに若干の違いがありました。 (OpenOffice2.4.1ではセルに記録されていたスタイル名が、OpenOffice3.0では列ヘッダのデフォルトスタイルに記録されていました。) サンプルプログラムに付属のodsファイルと同じものをOpenOffice3.0で作っても、細かいスタイル情報は再現できない可能性があります。

このネタについて正確な情報を知りたい場合、OASISのサイト(2008/10/02確認)にある仕様書を見てください。 「OASIS標準」→「OpenDocument」の項目がそれです。


広告 : Amazon.co.jpアソシエイト