posts - 0, comments - 77, trackbacks - 0, articles - 356
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          使用Java將Word轉為Html或txt

          Posted on 2007-09-07 15:29 semovy 閱讀(354) 評論(0)  編輯  收藏 所屬分類: JAVA應用

          package org.client;

          // 使用Java將Word轉為Html或txt!
          import com.jacob.com.*;
          import com.jacob.activeX.*;
          import java.io.*;

          public class Client {

          // 取得指定目錄下面所有的doc文件名稱
          // ------------------------------------------------------------------------------
          // 方法原型: change(String paths, String savepaths)
          // 功能描述: 將指定目錄下面所有的doc文件轉化為HTML并存儲在相同目錄下
          // 輸入參數: String
          // 輸出參數: 無
          // 返 回 值: 無
          // 其它說明: 遞歸
          // ------------------------------------------------------------------------------
          public static void change(String paths, String savepaths) {

             File d = new File(paths);
             // 取得當前文件夾下所有文件和目錄的列表
             File lists[] = d.listFiles();
             String path = new String("");

             // 對當前目錄下面所有文件進行檢索
             for (int i = 0; i < lists.length; i++) {
              if (lists[i].isFile()) {
               String filename = lists[i].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文件

                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);
                } catch (Exception e) {
                 e.printStackTrace();
                } finally {
                 app.invoke("Quit", new Variant[] {});
                }
                System.out.println("轉化完畢!");
               }
              } else {
               path = paths;
               // 進入下一級目錄
               path = path + lists[i].getName() + "\\";
               // 遞歸遍歷所有目錄
               change(path, savepaths);
              }
             }
          }

          // ------------------------------------------------------------------------------
          // 方法原型: main(String[] args)
          // 功能描述: main文件
          // 輸入參數: 無
          // 輸出參數: 無
          // 返 回 值: 無
          // 其它說明: 無
          // ------------------------------------------------------------------------------
          public static void main(String[] args) {
             String paths = new String("D:\\作業\\day54\\");
             String savepaths = new String("D:\\作業\\day54\\");
             change(paths, savepaths);
          }
          /*
             * 其中import的jar包是一個開源的東東,網上搜索即得。 Dispatch.invoke(doc, "SaveAs",
             * Dispatch.Method, new Object[]{tpFile,new Variant(8)}, new int[1]);
             * 修改Variant(8)},里面得參數即可將Word轉化為各種類型。
             */

          }

          主站蜘蛛池模板: 平远县| 婺源县| 尉犁县| 奇台县| 九龙县| 新巴尔虎左旗| 新建县| 富源县| 古蔺县| 淳化县| 龙岩市| 九龙坡区| 马龙县| 长垣县| 韩城市| 祁阳县| 罗山县| 和龙市| 和林格尔县| 儋州市| 磐安县| 宁蒗| 岳池县| 禹州市| 武威市| 日照市| 页游| 西平县| 东乡族自治县| 政和县| 自治县| 青河县| 即墨市| 泾源县| 天长市| 洞口县| 石渠县| 剑阁县| 资源县| 石阡县| 楚雄市|