前言
鉴于JACOB在各种系统环境下容易出现各种各样的问题,因此,本文介绍的是使用JCom组件来将Word文档自动转换为HTML。它非常容易使用。
JCom官方网址在:http://sourceforge.net/projects/jcom/
运行JCom需要一个jar包以及一个dll文件,从官方网站可以下载这两个文件,下文所描述的例子,是基于jcom- 2.2.4 ,在WindowsXP SP2,office2003,JDK1.5的环境下测试通过。
JCom基本结构
利用JCom转换Word文件
1、 首先要加入jcom.jar到类路径
2、 其次要将jcom.dll加入到path环境变量中
3、 需配置JAVA_HOME环境变量指向你的JDK
运行如下代码即可:
//首先转换为HTML文件,存放到临时目录 ReleaseManager rm = new ReleaseManager(); String userdir = System.getProperty("user.dir"); String tempHtmlFile = userdir + "/" + System.currentTimeMillis() + ".html"; try { IDispatch wdApp = new IDispatch(rm, "Word.Application"); wdApp.put("Visible", new Boolean(false)); IDispatch wdDocuments = (IDispatch)wdApp.get("Documents"); IDispatch wdDocument = (IDispatch)wdDocuments.method("Open", new Object[]{wordDocumentFilePath}); //转换为HTML文件 wdDocument.method("SaveAs", new Object[]{tempHtmlFile,8}); wdApp.method("Quit", null); logger.info("文件已临时存放到:"+tempHtmlFile); } catch (Exception e) { e.printStackTrace(); }finally{ rm.release(); } |
这将会自动将Word转换为HTML文件,其中的图片也被自动保存到了相应的目录(xxx.files目录)下。掌握了这个基本的核心原理,那么其它的操作也就不再困难了。本站的文章自动发布系统就是采用了JCom来做的,本站所有的文章都是在Word中编辑,随意插入各种格式和图片,最后将Word一发布(转换为HTML),即可将文本、格式、图片等一次性发布到网站上。