当前位置:编程学习 > JAVA >>

java读写word文档

网上找了很多资料,例如poi,对word可以读出文本,我也试过,但写的时候写出来的文档打不开,应该是编码乱了吧,网上有的说poi对于excel的处理比较好,word只能读取文本,想写word格式文档不行
似乎那个jacob可以写word,我试了下,有两个问题:
1:ActiveXComponent word = new ActiveXComponent("Office12.Word.DocumentMacroEnabled.12");这局代码里的id,如何取得,说是注册表中插件的greid,我怎么找到clsid那个是jacob插件的?现在我去注册表找了个,只是看到有名字写的是word的用了下,不知道对不对,用了之后会报下面2中错误。


2:现在用插件jacob报如下错误:
com.jacob.com.ComFailException: Can't map name to dispid: Visible
at com.jacob.com.Dispatch.invokev(Native Method)
at com.jacob.com.Dispatch.invokev(Dispatch.java:804)
at com.jacob.com.Dispatch.invoke(Dispatch.java:483)
at com.jacob.com.Dispatch.put(Dispatch.java:762)
at com.jacob.activeX.ActiveXComponent.setProperty(ActiveXComponent.java:164)
at filetoword.MSWordManager.readword2(MSWordManager.java:152)
at filetoword.MSWordManager.main(MSWordManager.java:131)
Exception in thread "main" com.jacob.com.ComFailException: Can't map name to dispid: Quit
at com.jacob.com.Dispatch.invokev(Native Method)
at com.jacob.com.Dispatch.invokev(Dispatch.java:804)
at com.jacob.com.Dispatch.callN(Dispatch.java:440)
at com.jacob.activeX.ActiveXComponent.invoke(ActiveXComponent.java:489)
at filetoword.MSWordManager.readword2(MSWordManager.java:168)

应该是这句话报错的:
ActiveXComponent app = new ActiveXComponent("Office12.Word.DocumentMacroEnabled.12");
        //启动word
        try
        {
          app.setProperty("Visible", new Variant(false));
java word jacob --------------------编程问答-------------------- 读取word文档替换里面文本,保存为新的word文档 --------------------编程问答-------------------- ActiveXComponent app = new ActiveXComponent("Word.Application");可以不 --------------------编程问答-------------------- java操作word的方式 --------------------编程问答--------------------
引用 2 楼 u010863631 的回复:
ActiveXComponent app = new ActiveXComponent("Word.Application");可以不

不可以,这个会报另一个错。好像是id不对的错 --------------------编程问答--------------------
引用 3 楼 dengsilinming 的回复:
java操作word的方式

对,就想实现这个 --------------------编程问答-------------------- 有没做过的,给些提示,那个插件能完成这样的功能。在线等 --------------------编程问答-------------------- 想问下这个问题解决没有,我出现了同样的情况。报的是一样的错。不知道该怎么解决了。
补充:Java ,  Java SE
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,