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

新手上路,请多包涵

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

原文由 baris 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 651
1 个回答

查看 ODFDOM - OpenDocument API

ODFDOM 是一个免费的开放文档格式 (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 年 2 月),我们被告知这些类已被弃用……很重要,而且 OdfTextDocument API 文档告诉您:

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

这意味着您仍然在项目中包含相同的活动 .jar 文件 simple-odf-0.8.1-incubating-jar-with-dependencies.jar ,但您希望解压缩以下 .jar 以获取文档: simple-odf-0.8.1-incubating-javadoc.jar ,而不是 odfdom-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 应该是显而易见的。

原文由 Adnan 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题