Java程序把Word文檔直接轉(zhuǎn)換成Html文件

字號:

Jacob是Java和Windows下的Com橋,通過它我們可以在Java程序中調(diào)用COM組件。如果你的JDK是1.4,那你需要下載Jacob1.9的jni庫才能正常運行,早期版本在JDK1.4下有些問題。
    以下是引用片段:
    package com;
    /**
    * 〈p〉Title:Word文檔轉(zhuǎn)html類〈/p〉
    * 〈p〉Description: 〈/p〉
    * 〈p〉Copyright:() 2002〈/p〉
    * @author 舵手
    * @version 1.0
    */
    import com.jacob.com.*;
    import com.jacob.activeX.*;
    public class WordtoHtml {
    /**
    *文檔轉(zhuǎn)換函數(shù)
    *@param docfile word文檔的絕對路徑加文件名(包含擴展名)
    *@param htmlfile 轉(zhuǎn)換后的html文件絕對路徑和文件名(不含擴展名)
    */
    public static void change(String docfile, String htmlfile) {
    ActiveXComponent app = new ActiveXComponent("Word.Application"); // 啟動word
    try {
    app.setProperty("Visible", new Variant(false));
    //設(shè)置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\\運輸管理調(diào)度系統(tǒng)總體方案.doc", "c:\\a\\t");
    }
    }