jacob(word)包括java.dll,jacob.jar下载及相关操作!1
来源:百度文库 编辑:神马文学网 时间:2024/04/26 17:05:25
jacob(word)包括java.dll,jacob.jar下载及相关操作!
jcob的原理是通过一个接口来操作word的activex对象。现在的版本是1.9。
首先:把jcob.dll拷贝到system32目录下。
其次:把jcob.jar的路径放置在classpath目录下。
最后:编写访问类。
public static void main(String[] args) {
//启动word,生成一个ActivexComponent对象
ActiveXComponent app = new ActiveXComponent("Word.Application");
//要转换的word文件
String inFile = "D:\\project\\java_word\\java_word\\wordtemplet.doc";
//要报存的目标文件
String tpFile ="D:\\project\\java_word\\java_word\\wordtemplet3.doc";
boolean flag = false;
Dispatch xlo = app.getObject();
String oldText="1234";
String newText="test";
boolean visible=false;
String bookMarkKey="LB_KJGG";
try {
//设置word不可见
app.setProperty("Visible", new Variant(visible));
//log.info("设置word不可见成功!");
System.out.println("设置word不可见成功!");
Dispatch docs = app.getProperty("Documents").toDispatch();
Dispatch doc = Dispatch.invoke(docs, "Open", Dispatch.Method
,new Object[]
{inFile, new Variant(false), new Variant(true)}
, new int[1]).toDispatch(); //打开word文件
//在word2003的vba文档中application有UserName属性。
String userName=app.getPropertyAsString("UserName");
System.out.println("用户名:"+userName);
Dispatch selection=app.getProperty("Selection").toDispatch();
//得到一个组件
System.out.println("Selection");
Dispatch find = app.call(selection, "Find").toDispatch();
//查找什么文本
Dispatch.put(find, "Text", oldText);
//替换文本
Dispatch.call(find,"ClearFormatting");
Dispatch.put(find, "Text", oldText);
Dispatch.call(find, "Execute");
Dispatch.put(selection, "Text", newText);
// Dispatch.call(app, "SaveAs", inFile);
System.out.println("replace");
//把指定的值设置到指定的标签中去
Dispatch activeDocument=app.getProperty("ActiveDocument").toDispatch();
System.out.println("activedocument");
Dispatch bookMarks = app.call(activeDocument, "Bookmarks").toDispatch();
System.out.println("bookmarks");
boolean bookMarkExist1=Dispatch.call(bookMarks,"Exists",bookMarkKey).toBoolean();
if(bookMarkExist1==true){
System.out.println("exists bookmark!");
Dispatch rangeItem = Dispatch.call(bookMarks, "Item",bookMarkKey).
toDispatch();
System.out.println("range item!");
Dispatch range = Dispatch.call(rangeItem, "Range").toDispatch();
System.out.println("range !");
//取标签的值
String bookMarkValue=Dispatch.get(range,"Text").toString();
bookMarkValue="test";
if(bookMarkValue!=null){
Dispatch.put(range, "Text",
new Variant(bookMarkValue));
}
}
else{
System.out.println("not exists bookmark!");
}
//保存文件
Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {tpFile, new Variant(0)} , new int[1]);
//作为word格式保存到目标文件
Variant f = new Variant(false);
Dispatch.call(doc, "Close", f);
flag = true;
}
catch (Exception e) {
e.printStackTrace();
}
finally {
app.invoke("Quit", new Variant[] {});
}
jcob的原理是通过一个接口来操作word的activex对象。现在的版本是1.9。
首先:把jcob.dll拷贝到system32目录下。
其次:把jcob.jar的路径放置在classpath目录下。
最后:编写访问类。
public static void main(String[] args) {
//启动word,生成一个ActivexComponent对象
ActiveXComponent app = new ActiveXComponent("Word.Application");
//要转换的word文件
String inFile = "D:\\project\\java_word\\java_word\\wordtemplet.doc";
//要报存的目标文件
String tpFile ="D:\\project\\java_word\\java_word\\wordtemplet3.doc";
boolean flag = false;
Dispatch xlo = app.getObject();
String oldText="1234";
String newText="test";
boolean visible=false;
String bookMarkKey="LB_KJGG";
try {
//设置word不可见
app.setProperty("Visible", new Variant(visible));
//log.info("设置word不可见成功!");
System.out.println("设置word不可见成功!");
Dispatch docs = app.getProperty("Documents").toDispatch();
Dispatch doc = Dispatch.invoke(docs, "Open", Dispatch.Method
,new Object[]
{inFile, new Variant(false), new Variant(true)}
, new int[1]).toDispatch(); //打开word文件
//在word2003的vba文档中application有UserName属性。
String userName=app.getPropertyAsString("UserName");
System.out.println("用户名:"+userName);
Dispatch selection=app.getProperty("Selection").toDispatch();
//得到一个组件
System.out.println("Selection");
Dispatch find = app.call(selection, "Find").toDispatch();
//查找什么文本
Dispatch.put(find, "Text", oldText);
//替换文本
Dispatch.call(find,"ClearFormatting");
Dispatch.put(find, "Text", oldText);
Dispatch.call(find, "Execute");
Dispatch.put(selection, "Text", newText);
// Dispatch.call(app, "SaveAs", inFile);
System.out.println("replace");
//把指定的值设置到指定的标签中去
Dispatch activeDocument=app.getProperty("ActiveDocument").toDispatch();
System.out.println("activedocument");
Dispatch bookMarks = app.call(activeDocument, "Bookmarks").toDispatch();
System.out.println("bookmarks");
boolean bookMarkExist1=Dispatch.call(bookMarks,"Exists",bookMarkKey).toBoolean();
if(bookMarkExist1==true){
System.out.println("exists bookmark!");
Dispatch rangeItem = Dispatch.call(bookMarks, "Item",bookMarkKey).
toDispatch();
System.out.println("range item!");
Dispatch range = Dispatch.call(rangeItem, "Range").toDispatch();
System.out.println("range !");
//取标签的值
String bookMarkValue=Dispatch.get(range,"Text").toString();
bookMarkValue="test";
if(bookMarkValue!=null){
Dispatch.put(range, "Text",
new Variant(bookMarkValue));
}
}
else{
System.out.println("not exists bookmark!");
}
//保存文件
Dispatch.invoke(doc, "SaveAs", Dispatch.Method, new Object[] {tpFile, new Variant(0)} , new int[1]);
//作为word格式保存到目标文件
Variant f = new Variant(false);
Dispatch.call(doc, "Close", f);
flag = true;
}
catch (Exception e) {
e.printStackTrace();
}
finally {
app.invoke("Quit", new Variant[] {});
}
jacob(word)包括java.dll,jacob.jar及相关操作!
jacob(word)包括java.dll,jacob.jar下载及相关操作!1
jacob(word)包括java.dll,jacob.jar下载及相关操作!
jacob(word)包括java.dll,jacob.jar下载及相关操作
The JACOB Project
Java命令及Jar命令
The Fox and the Horse Jacob
什么是java平台及jar、jad及sis区别
Jar114.Com - JAR包搜索,JAR包下载,java网址大全,中文在线手册
Java多线程操作相关问题总结
[分享]JAR文件包及jar命令详解 - J2SE论坛 - JAVA论坛 - 编程论坛
java中的jar
jar电子书制作工具JBookMaker教程及下载
斯蒂芬 · 雅各Stephen Jacob - Your Moon, My Star 雅各-你的月亮,我的星
java操作注册表1
炒股技巧jar下载
Groove Coverage介绍及相关歌曲下载
全部DLL下载
全部DLL下载
JAR文件包及jar命令详解
JAVA call VC DLL(一)
《生命不仅仅如此——辟谷记》在线阅读及TXT,JAR下载小说-(社会哲学)
《蒋介石的超级特工(选载)》在线阅读及TXT,JAR下载小说-(人物传记)
《苦难辉煌》在线阅读及TXT,JAR下载小说-(历史军事)