巧用Java程序把Word转换成Html文件

    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\运输<nobr target="_blank" onmouseout="kwL(event, this);" onclick="return kwC();" style="border-bottom: 1px dotted rgb(102, 0, 255); color: rgb(102, 0, 255); background-color: transparent; text-decoration: underline;" onmouseover="kwE(event,0, this);" id="key0" onmousemove="kwM(0);" oncontextmenu="return false;">管理</nobr>调度系统总体方案.doc", "c:\a\t");

    }

}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值