,本来没想到自己会为《轻松架起Java连接COM对象的桥梁》作续,而今还写了续二,可知我们网络上探讨技术的网友们还是挺多的,非常欣慰!这次内容是利用雅各实现在词文档中替换字符串。关于雅各的使用这里不详述,请见《轻松架起Java连接COM对象的桥梁》,具体实现如下:
进口com.jacob.com。*;
进口com.jacob.ActiveX。*;
公共类Exam_9 {
,
,公共静态void main (String [] args) {
,
, ActiveXComponent应用=new ActiveXComponent (Word.Application ");//启动字
,字符串inFile=癏: Majix-1_2_2_fullsamplemy.doc”;//要替换的词文件
,布尔标志=false;
, {
,尝试应用。setProperty(“可见”,新变种(假));//设置一词不可见
,对象文档=app.getProperty(“文件”).toDispatch ();
,对象doc=调度。调用(文档,“开放”,调度。方法、新对象[]{inFile,新变型(假),新变型(false)},新int [1]) .toDispatch();//打开词文件,注意这里第三个参数要设为false,这个参数表示是否以只读方式打开,因为我们要保存原文件,所以以可写方式打开。
,对象内容=调度。(医生,“内容”).toDispatch();//提取词文档内容对象
, Object finder=调度。get(内容,“找到”).toDispatch();//提取找到对象,也就查找替换的那个对象
,变体f=新变型(假);
,
,布尔rt=true;
,而(rt) {
大敌;rt=调度。调用(仪,“执行”,派遣。方法,新对象[]{“旧”,f, f, f, f, f, f, f, f,“新”,新变型(true)},新int [1]) .toBoolean();//替换旧的——在新的
,}
,
, Dispatch.call(医生,“拯救”);//保存
,调度。调用(医生,“关闭”,f);
,国旗=true;
,}捕捉(异常e) {
, e.printStackTrace ();
,}最后{
应用程序。调用(“辞职”,新的变异[]{});
,}
,}
}
有疑问联系Mailto: zlyperson@163.NET "> zlyperson@163.NET