Era*_*dan 8 java ms-word apache-poi
我想使用模板创建一个word文档,替换一些变量(字段)并将其另存为新的word文档.
我在想使用Apache POI,http://poi.apache.org/它是否最适合这个目的?你能分享一下你的印象吗?
我之前和POI合作过,它肯定能够生成Word文档.但魔鬼在于细节.
Word具有数千个功能:您可以将带有负缩进的#13开头的编号列表放入另一个表中包含的表的两个连接单元格中,该表本身就是项目符号列表的一部分...您明白了.当POI文档说他们是正在进行的工作时,这反映了可能是一个永远的状态,试图赶上(对我们,未记录的)Word规范.
具有合理"正常"使用特征集的文档得到POI的良好支持,其接口和方法合理且一致,但有时需要一些工作.但正如Pascal所说,RTF也支持具有不太高功能的文档.我几乎没有"做"RTF的经验,但它可能比使用POI更简单.
如果您在一个环境中工作或者坚持生产文档的客户.DOC
而不是.RTF
,那么POI几乎是您唯一的选择,除非您可以引入一个步骤,您可以使用一些Office自动化将RTF转换为DOC .
更新:在此期间我还有更多想法.
您可以在几乎任何平台上使用POI或创建RTF文档.例如,在我的工作中,所有正在进行此类处理的服务器都在运行Linux.
但是,在可能的情况下,您的程序将在Windows下运行,还有另一种选择:Jacob http://www.land-of-kain.de/docs/jacob/
Jacob是COM
Java 的接口; 它基本上允许您"远程控制"Windows程序,如Word和Excel.我上面链接的文件不是雅各布自己的网站,而是单页的"千篇一律"使用雅各布的食谱.该项目本身在SourceForge上:http://sourceforge.net/projects/jacob-project/但人们声称,并且正确地说,文档有点缺乏.
Jacob优于您处理"真正"Word的所有其他解决方案,因此您可以使用Word的所有功能.如果您的文档的细节方面无法通过POI或RTF格式处理,则可以选择此选项.
这显然已经太晚了,但自 2013 年以来,出现了更好、更灵活的 Word 文档创建解决方案。
http://www.docx4java.org/trac/docx4j
我在 docx4j 上的运气比在 POI 上的运气要好得多。
归档时间: |
|
查看次数: |
20458 次 |
最近记录: |