我的电脑的os为 win7旗舰版 32位 word为2010
1.下载jacob1-17 http://sourceforge.net/projects/jacob-project/?source=dlp
2.解压后 将jacob-1.17-x86.dll放到 C:WindowsSystem32目录下
3.新建java工程 将解压后的jacob.jar放入到工程下
4.编写测试文件 Jacob1_17Test.java
package com.undergrowth; import com.jacob.activeX.ActiveXComponent; import com.jacob.com.Dispatch; import com.jacob.com.Variant; public class Jacob1_17Test { /** * @param args * 1.先获取word对象 * 2.获取word文档集合属性 * 3.获取word文档属性 */ public static void main(String[] args) { // TODO Auto-generated method stub //1.获取word对象 ActiveXComponent wordObject=new ActiveXComponent("Word.Application"); //设置word对象可见 wordObject.setProperty("Visible", new Variant(true)); //2.获取word文档集合属性 Dispatch documents=Dispatch.get(wordObject, "documents").toDispatch(); //3.获取word文档属性 在d盘下有一个名为jacob.doc文档 Dispatch document=Dispatch.call(documents, "Open", "d:\jacob.doc").toDispatch(); //4.向word中添加内容 Dispatch insertDocument=Dispatch.get(wordObject, "Selection").getDispatch(); //默认插入点在文件首位置 Dispatch.call(insertDocument, "TypeText", "新添加的内容1"); //插入的为一段文本 起到分行的作用 Dispatch.call(insertDocument, "TypeParagraph"); //将插入点移动到文件末尾 Dispatch.call(insertDocument, "EndKey", new Variant(6)); Dispatch.call(insertDocument, "TypeText", " 新添加的内容2"); //5.将添加的内容保存到另一个地方 Dispatch.call(Dispatch.get(wordObject, "WordBasic").getDispatch(), "FileSaveAs", "d:\jacob_new.doc"); } }
上面干了三件事
1.打开位于d:\jacob.doc下的word(当然你的新建了) 内容为
2.向word中添加了两个文本信息 效果图为:
3.保存为另外一个文件d:\jacob_new.doc