メモ代わり。てきとーに。 いや、ですからてきとーですって。 2年前ぐらいにPythonあたりでメールくれた方、ごめんなさい。メール紛失してしまい無視した形になってしまいました。。。

2008年12月30日火曜日

[work][OpenOffice][SDK][java]Spreadsheet Documents読み中(5) スプレッドシートの保存

http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/Spreadsheets/Saving_Spreadsheet_Documents
を読む。


Saving Spreadsheet Documents
ドキュメントは、com.sun.star.frame.XStorableというインタフェースを通して保存することができる。

XStorable.storeAsURL()は、「名前をつけて保存」と似た感じ。
XStorable.storeToUrl()は、現在読み込んでいるドキュメントはそのままで、指定されたURLにコピーとして保存する。


Exporting
他のフォーマットで保存する場合、プロパティFilterNameを指定する。
FilterNameにはフォーマットの名前を指定する。
指定できるフォーマットの名前は、


<OfficePath>/share/config/registry/instance/org/openoffice/Office/TypeDetection.xml
 

に記述されているらしい。
Debian-Etchだと、

/usr/lib/openoffice/share/registry/res/en-US/org/openoffice/TypeDetection/Filter.xcu
 

あたりかな??
MS Excel 2003 XMLで出力したかったら、

XStorable xStorable = (XStorable)UnoRuntime.queryInterface(XStorable.class, xDoc);
PropertyValue[] storeProps = new PropertyValue[1];
storeProps[0] = new PropertyValue();
storeProps[0].Name = "FilterName";
storeProps[0].Value = "MS Excel 2003 XML";
xStorable.storeAsURL(storeUrl, storeProps);
 

などと指定すればよいっぽい。



.

0 コメント: