Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法从头生成打开的文档?_Java_Ms Word_Openoffice Writer - Fatal编程技术网

Java 无法从头生成打开的文档?

Java 无法从头生成打开的文档?,java,ms-word,openoffice-writer,Java,Ms Word,Openoffice Writer,几个小时以来,我一直在寻找如何从头开始生成一个开放的Office文档,但是.doc会很高兴,因为我使用的是Grails,没有带有JavaAPI的docx。无论如何,似乎每个方法都需要一个预先存在的文档才能正常工作。我看过javaranchhttp://www.coderanch.com/how-to/java/AccessingFileFormats 我所看到的一切都不能满足我的愿望 所以我问你一个问题:是否真的可以从头生成一个.doc或.odt文件?因为我发现在代码之外创建文档非常难看 干杯首

几个小时以来,我一直在寻找如何从头开始生成一个开放的Office文档,但是.doc会很高兴,因为我使用的是Grails,没有带有JavaAPI的docx。无论如何,似乎每个方法都需要一个预先存在的文档才能正常工作。我看过javaranchhttp://www.coderanch.com/how-to/java/AccessingFileFormats 我所看到的一切都不能满足我的愿望

所以我问你一个问题:是否真的可以从头生成一个.doc或.odt文件?因为我发现在代码之外创建文档非常难看


干杯

首先,决定你谈论的是哪个开放办公室。要么是Office Open XML,这是他们XML文档的Microsoft品牌,要么是OpenOffice,这是Libre Office/Open Office/Star Office Suite和大约50种其他文档的原生文档格式

此外,如果您正在搜索有关如何访问文档内部内容的教程,则很可能会找到需要访问文档的说明

搜索编程文档创建可能会有所帮助,但如果这还不能满足您的需要,您可以注意用于修改文档的库,并查看它们是否提供了用于生成干净文档的API。他们中的一个成功的几率很大,即使它是不完整的


很抱歉给出了一般性的答案,但它必须是一般性的,因为从标记列表来看,您甚至不清楚要编写哪种文档格式。

OpenOffice.org的Universal Network Objects UNO允许您生成.doc、.PDF以及OpenOffice文档。它支持多种编程语言,如:java、C++、Visual Basic、ETCC……/P> 一些好东西是:它是免费的、开源的和平台无关的

您可以从头开始或使用模板构建文档、电子表格、演示文稿等,并填补空白

为了使用它,您需要包括OpenOffice套件附带的一些库

有用链接:


?doc的副本。doc不是打开的office文档,它是microsoft word文档。就像docx一样。至于odt,请参阅replicate.Hello。事实上,我并不真正关心格式,如果我能做我想做的事情,我不喜欢.odt或.doc:D正如你所说的,我已经看过了示例,并试图看看是否有可能生成一个干净的文档。目前我还没有看到它。这就是为什么我在这里问;如果你不在乎,那就掷硬币挑一个。我个人编写了生成.odf文件的软件,所以我可以说它们非常容易编写。当时,它们只是.zip文件,包含一组结构化的XML文件,其中一个XML文件是内容文件,其他文件用于样式设置、页面格式等。如果编写代码以生成最小的XML文档,您可以使用任何XML库从头开始编写所有内容。也就是说,如果您可以使用ODF工具包,它将为您节省大量样板代码。