当前位置: 代码迷 >> Java相关 >> 使用Java将Word转为Html或txt等...
  详细解决方案

使用Java将Word转为Html或txt等...

热度:287   发布时间:2004-12-29 22:54:00.0
使用Java将Word转为Html或txt等...
前一段时间为这个问题头疼的不得了,后来查阅了资料终于解决了;现将程序放出,以便以后参考。 //------------------------------------------------------------------------------ //版权所有 (C) 浪潮集团商用系统有限公司 保留所有权利 //文件名称: wordtohtml 文件版本: 1.00.00 //作 者: 郭铸 作者邮箱: guozhu@langchao.com 完成日期: 2004-10-20 //文件描述: //其它描述: //类 列 表: // wordtohtml: 将指定目录下面所有的doc文件转化为HTML并存储在相同目录下 //修改历史: // # 版本 修改日期 作者 修改内容 // ---------------------------------------------------------------------------- // 1 1.00.01 2004-10-14 作者姓名 修改内容描述 // ---------------------------------------------------------------------------- //------------------------------------------------------------------------------ import com.jacob.com.*; import com.jacob.activeX.*; import java.io.*;

//取得指定目录下面所有的doc文件名称 public class wordtohtml { //------------------------------------------------------------------------------ //方法原型: change(String paths) //功能描述: 将指定目录下面所有的doc文件转化为HTML并存储在相同目录下 //输入参数: String //输出参数: 无 //返 回 值: 无 //其它说明: 递归 //------------------------------------------------------------------------------ public static void change(String paths, String savepaths) { File d = new File(paths); //取得当前文件夹下所有文件和目录的列表 File lists[] = d.listFiles(); String pathss = new String("");

//对当前目录下面所有文件进行检索 for(int i = 0; i < lists.length; i ++) { if(lists.isFile()) { String filename = lists.getName(); String filetype = new String(""); //取得文件类型 filetype = filename.substring((filename.length() - 3), filename.length()); //判断是否为doc文件 if(filetype.equals("doc")) { System.out.println("当前正在转换......"); //打印当前目录路径 System.out.println(paths); //打印doc文件名 System.out.println(filename.substring(0, (filename.length() - 4))); ActiveXComponent app = new ActiveXComponent("Word.Application");//启动word String docpath = paths + filename; String htmlpath = savepaths + filename.substring(0, (filename.length() - 4)); String inFile = docpath; //要转换的word文件 String tpFile = htmlpath; //HTML文件

boolean flag = false; try { app.setProperty("Visible", new Variant(false)); //设置word不可见 Object docs = app.getProperty("Documents").toDispatch(); Object doc = Dispatch.invoke(docs,"Open", Dispatch.Method, new Object[]{inFile,new Variant(false), new Variant(true)}, new int[1]).toDispatch(); //打开word文件 Dispatch.invoke(doc,"SaveAs", Dispatch.Method, new Object[]{tpFile,new Variant(8)}, new int[1]); //作为html格式保存到临时文件 Variant f = new Variant(false); Dispatch.call(doc, "Close", f); flag = true; } catch (Exception e) { e.printStackTrace(); } finally { app.invoke("Quit", new Variant[] {}); } System.out.println("转化完毕!"); } } else { pathss = paths; //进入下一级目录 pathss = pathss + lists.getName() + "\\"; //递归遍历所有目录 change(pathss, savepaths); } } } //------------------------------------------------------------------------------ //方法原型: main(String[] args) //功能描述: main文件 //输入参数: 无 //输出参数: 无 //返 回 值: 无 //其它说明: 无 //------------------------------------------------------------------------------ public static void main(String[] args) { String paths = new String("D:\\Work\\2004.10.8\\test system\\test01\\word\\"); String savepaths = new String ("D:\\Work\\2004.10.8\\test system\\test01\\html\\");

change(paths, savepaths);

} } 其中import的jar包是一个开源的东东,网上搜索即得。 Dispatch.invoke(doc,"SaveAs", Dispatch.Method, new Object[]{tpFile,new Variant(8)}, new int[1]); 修改Variant(8)},里面得参数即可将Word转化为各种类型。

搜索更多相关的解决方案: txt  Java  Word  Html  

----------------解决方案--------------------------------------------------------
  相关解决方案