如何使用java以编程方式创建odt文件?

如何以编程方式使用Java创建odt(LibreOffice/OpenOffice Writer)文件?一个“hello world”的例子就足够了。我查看了OpenOffice网站,但文档不清楚。


答案 1

看看 ODFDOM - OpenDocument API

ODFDOM是一个免费的OpenDocument Format(ODF)库。其目的是提供一种简单的通用方法来创建、访问和操作 ODF 文件,而无需详细了解 ODF 规范。它旨在为ODF开发人员社区提供一个简单的轻量级编程API,可移植到任何面向对象的语言。

当前的参考实现是用 Java 编写的。

// Create a text document from a standard template (empty documents within the JAR)
OdfTextDocument odt = OdfTextDocument.newTextDocument();

// Append text to the end of the document. 
odt.addText("This is my very first ODF test");

// Save document
odt.save("MyFilename.odt");

在撰写本文(2016-02)时,我们被告知这些类已被弃用...大时间,API文档告诉你:OdfTextDocument

从0.8.8版开始,在Simple API中由org.odftoolkit.simple.TextDocument取代。

这意味着您仍然在项目中包含相同的活动.jar文件,但您希望解压缩以下.jar以获取文档:,而不是 。simple-odf-0.8.1-incubating-jar-with-dependencies.jarsimple-odf-0.8.1-incubating-javadoc.jarodfdom-java-0.8.10-incubating-javadoc.jar

顺便说一句,文档链接在.zip中下载了一堆jar文件,上面写着“0.6.1”......但里面的大部分东西似乎更像是0.8.1。我不知道为什么他们在“已弃用”类的文档中说“截至0.8.8”:几乎所有内容都已标记为已弃用。

与上述代码等效的简单代码是:

odt_doc = org.odftoolkit.simple.TextDocument.newTextDocument()
para = odt_doc.getParagraphByIndex( 0, False )
para.appendTextContent( 'stuff and nonsense' )
odt_doc.save( 'mySpankingNewFile.odt' )

PS我使用Jython,但Java应该是显而易见的。


答案 2

我还没有尝试过,但使用JOpenDocument可能是一种选择。(它似乎是一个纯粹的Java库,用于生成OpenDocument文件。


推荐