word文档转html利器

来源:互联网 发布:异星工厂加入物流网络 编辑:程序博客网 时间:2024/06/07 13:01

有需求,就会有相应的技术出现,以前知道word可以用来书写html网页,那自然就可以转成html页面,难道我们要用word开发html页面吗?

你可能会问,我为什么要把word转成html?是的,开始我也很不理解为什么会有这样的需求。


后来,我竟然真的迫切地需要一个这样的功能,把word直接转成html,挂入我们的网站。


我们要自己的oa系统,有很多经验分享要挂在oa系统上,但这些经验很多都是以word文档的形式保存的。如何能在线预览?

有很多方式,比如转为flash等等,但都太复杂了。

我想到了一种变通的方式,即提前把word转换为html,预览的时候,直接返回这个html即可,当然不能手工转,要借助工具,即jacob


详见如下DEMO:


1、导入jacob.jar

2、核心测试代码

import com.jacob.activeX.ActiveXComponent;import com.jacob.com.Dispatch;import com.jacob.com.Variant;/** *  *  * @author jialin * @since 2015-3-27 */public class word2html {public static boolean wordToHtml(String inPath, String toPath) {// 启动wordActiveXComponent axc = new ActiveXComponent("Word.Application");boolean flag = false;try {// 设置word不可见axc.setProperty("Visible", new Variant(false));Dispatch docs = axc.getProperty("Documents").toDispatch();// 打开word文档Dispatch doc = Dispatch.invoke(docs,"Open",Dispatch.Method,new Object[] { inPath, new Variant(false),new Variant(true) }, new int[1]).toDispatch();// 作为html格式保存到临时文件Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {toPath, new Variant(8) }, new int[1]);Variant f = new Variant(false);Dispatch.call(doc, "Close", f);flag = true;return flag;} catch (Exception e) {e.printStackTrace();return flag;} finally {axc.invoke("Quit", new Variant[] {});}}public static void main(String[] args) {        word2html.wordToHtml("E://01_Document//ths_project//webservice//webservice_invoke_help.docx","E://01_Document//ths_project//webservice//webservice_invoke_help.htm");}}

忽然想起当年老师说的一句话:遇到问题,你就去搜吧,肯定前面已经有很多人遇到和你一样的问题了。看看别人是怎么干的,借鉴一下,站在巨人的肩膀上。

有了需求,自然有解决需求的工具。




0 0