package com.heyang;
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.ComThread;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
public class CreateWordDocument{
public static void main(String[] args) throws Exception{
// 初始化com的線程,非常重要!!使用結(jié)束后要調(diào)用 realease方法
ComThread.InitSTA();
// 實(shí)例化ActiveX組件對(duì)象:對(duì)word進(jìn)行操作
ActiveXComponent wrdCom= new ActiveXComponent("Word.Application");
// 獲取Dispatch的Documents對(duì)象
Dispatch wrdDocs=wrdCom.getProperty("Documents").toDispatch();
// 設(shè)置打開的word應(yīng)用程序是否可見
wrdCom.setProperty("Visible", new Variant(true));
// 創(chuàng)建一個(gè)新的文檔
Dispatch doc = Dispatch.call(wrdDocs, "Add").toDispatch();
// 獲得當(dāng)前word文檔文本
Dispatch docSelection = Dispatch.get(wrdCom, "Selection").toDispatch();
// 輸入文字
Dispatch.put(docSelection, "Text", "測(cè)試Text");
// 另存為
Dispatch.call(doc, "SaveAs", new Variant("C:\\abc.doc")); // 保存一個(gè)新文檔
// 保存關(guān)閉
if (doc != null) {
Dispatch.call(doc, "Save");
Dispatch.call(doc, "Close", new Variant(true));
doc = null;
}
// 關(guān)閉word文件
wrdCom.invoke("Quit", new Variant[] {});
// 釋放com線程。根據(jù)jacob的幫助文檔,com的線程回收不由java的垃圾回收器處理
ComThread.Release();
}
}
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.ComThread;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
public class CreateWordDocument{
public static void main(String[] args) throws Exception{
// 初始化com的線程,非常重要!!使用結(jié)束后要調(diào)用 realease方法
ComThread.InitSTA();
// 實(shí)例化ActiveX組件對(duì)象:對(duì)word進(jìn)行操作
ActiveXComponent wrdCom= new ActiveXComponent("Word.Application");
// 獲取Dispatch的Documents對(duì)象
Dispatch wrdDocs=wrdCom.getProperty("Documents").toDispatch();
// 設(shè)置打開的word應(yīng)用程序是否可見
wrdCom.setProperty("Visible", new Variant(true));
// 創(chuàng)建一個(gè)新的文檔
Dispatch doc = Dispatch.call(wrdDocs, "Add").toDispatch();
// 獲得當(dāng)前word文檔文本
Dispatch docSelection = Dispatch.get(wrdCom, "Selection").toDispatch();
// 輸入文字
Dispatch.put(docSelection, "Text", "測(cè)試Text");
// 另存為
Dispatch.call(doc, "SaveAs", new Variant("C:\\abc.doc")); // 保存一個(gè)新文檔
// 保存關(guān)閉
if (doc != null) {
Dispatch.call(doc, "Save");
Dispatch.call(doc, "Close", new Variant(true));
doc = null;
}
// 關(guān)閉word文件
wrdCom.invoke("Quit", new Variant[] {});
// 釋放com線程。根據(jù)jacob的幫助文檔,com的線程回收不由java的垃圾回收器處理
ComThread.Release();
}
}