jacob是java和windows下的com桥,通过它我们可以在java程序中调用COM组件。如果你的JDK是1.4,那你需要下载jacob1.9的jni库才能正常运行,早期版本在JDK1.4下有些问题。
package com; /** * <p>Title:Word文档转html类</p> * <p>Description: </p> * <p>Copyright:() 2002</p> * @author 舵手 * @version 1.0 */ import com.jacob.com.*; import com.jacob.activeX.*;
public class WordtoHtml { /** *文档转换函数 *@param docfile word文档的绝对路径加文件名(包含扩展名) *@param htmlfile 转换后的html文件绝对路径和文件名(不含扩展名) */ public static void change(String docfile, String htmlfile) { ActiveXComponent app = new ActiveXComponent("Word.Application");// 启动word try { app.setProperty("Visible", new Variant(false)); //设置word不可见 Object docs = app.getProperty("Documents").toDispatch(); Object doc = Dispatch.invoke(docs,"Open",Dispatch.Method,new Object[] { docfile, new Variant(false),new Variant(true) }, new int[1]).toDispatch(); // 打开word文件 Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {htmlfile, new Variant(8) }, new int[1]); // 作为html格式保存到临时文件 Variant f = new Variant(false); Dispatch.call(doc, "Close", f); } catch (Exception e) { e.printStackTrace(); } finally { app.invoke("Quit", new Variant[]{}); } } public static void main(String[] strs){ WordtoHtml.change("c:\\a\\运输管理调度系统总体方案.doc", "c:\\a\\t"); } } |