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

          使用Java將Word轉為Html或txt

          Posted on 2007-09-07 15:29 semovy 閱讀(347) 評論(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轉化為各種類型。
             */

          }

          主站蜘蛛池模板: 高安市| 台江县| 孟村| 武邑县| 苗栗县| 鞍山市| 寿光市| 凤凰县| 肥城市| 沈丘县| 登封市| 公安县| 翼城县| 库车县| 平顶山市| 高邮市| 天气| 龙海市| 玉树县| 太和县| 丹棱县| 哈尔滨市| 特克斯县| 辽源市| 韩城市| 黔南| 宝山区| 莱芜市| 宕昌县| 肃南| 芮城县| 康平县| 本溪市| 涿鹿县| 隆尧县| 定襄县| 子长县| 安化县| 邓州市| 安平县| 荔波县|