我需要用Java将一个Word文档转换成HTML文件。该函数将输入一个Word文档,输出将基于Word文档的页数生成相应数目的HTML文件,例如,如果Word文档有3页,则会生成3个具有所需分页符的HTML文件。
我搜索了可以将doc转换为html的开源/非商业API,但没有找到任何结果。请帮助以前完成过这种工作的人。
谢谢
我需要用Java将一个Word文档转换成HTML文件。该函数将输入一个Word文档,输出将基于Word文档的页数生成相应数目的HTML文件,例如,如果Word文档有3页,则会生成3个具有所需分页符的HTML文件。
我搜索了可以将doc转换为html的开源/非商业API,但没有找到任何结果。请帮助以前完成过这种工作的人。
谢谢
JODConverter有很多文档、脚本和教程来帮助您。
我曾在生产系统中成功使用以下方法,其中新的MS Word XML格式不可用:
生成一个进程,执行类似以下操作:
http://www.oooninja.com/2008/02/batch-command-line-file-conversion-with.html
您可能希望在程序启动时启动openoffice,并在程序中需要多次调用Python脚本时进行调用(使用某种检查来确保ooffice进程始终存在)。http://www.dom4j.org/dom4j-1.4/apidocs/org/dom4j/io/HTMLWriter.html
我尝试了这种方法,它可以从以下网站与我一起使用: http://code.google.com/p/xdocreport/wiki/XWPFConverterXHTML
这只适用于将docx转换为包含在Word文档中的图像的html。
// 1) Load DOCX into XWPFDocument
InputStream doc = new FileInputStream(new File("c:/document.docx"));
XWPFDocument document = new XWPFDocument(doc);
// 2) Prepare XHTML options (here we set the IURIResolver to load images from a "word/media" folder)
XHTMLOptions options = XHTMLOptions.create(); //.URIResolver(new FileURIResolver(new File("word/media")));;
// 3) Extract image
String root = "target";
File imageFolder = new File( root + "/images/" + doc );
options.setExtractor( new FileImageExtractor( imageFolder ) );
// 4) URI resolver
options.URIResolver( new FileURIResolver( imageFolder ) );
OutputStream out = new FileOutputStream(new File("c:/document.html"));
XHTMLConverter.getInstance().convert(document, out, options);
我希望这可以解决你的问题
我看到这个帖子在外部链接中出现,有时会有一些帖子,因此我想发布一个更新(希望没有人介意)。OpenOffice不断发展,3.2版再次改进了单词导入导出过滤器。OpenOffice和Java可以运行在许多平台上,因此Java系统可以直接使用OpenOffice UNO API来导入/操作/导出许多格式的文档(包括Word和PDF),或使用类库如JODReports或Docmosis以方便。两者都有免费/开放选项。
import officetools.OfficeFile; // package available at www.dancrintea.ro/doc-to-pdf/
...
FileInputStream fis = new FileInputStream(new File("test.doc"));
FileOutputStream fos = new FileOutputStream(new File("test.html"));
OfficeFile f = new OfficeFile(fis,"localhost","8100", true);
f.convert(fos,"html");
所有可能的转换:
doc --> pdf、html、txt、rtf
xls --> pdf、html、csv
ppt --> pdf、swf
html --> pdf
如果您想将MS Word文档转换为HTML,您必须找到MS Word文档规范(因为它基本上是当前Word中的任何内容的二进制转储),并逐个元素地慢慢进行转换,将ms word“对象/状态”转换为html等效物。您可能能够找到一个脚本来帮助您完成这项工作,因为这真的不是一件有趣的工作,而且我建议不要这样做(转换文件格式甚至在自己的商业文件中读取始终很困难并且经常不完整)。 附注:只要google doc2html