各位帮忙看看java修改Word超链接

wumolin 2009-10-29 10:48:32
import com.jacob.com.*;
import com.jacob.activeX.*;

public class ReadWord {

public static void main(String[] args) {
ActiveXComponent app = new ActiveXComponent("Word.Application"); //启动word
String inFile = "C:\\test.doc"; //要替换的word文件
try {
app.setProperty("Visible", new Variant(false)); //设置word不可见         
Dispatch docs = app.getProperty("Documents").toDispatch();
Dispatch doc = Dispatch.invoke(docs,"Open",Dispatch.Method,new Object[] { inFile, new Variant(false),new Variant(false) }, new int[1]).toDispatch(); //打开word文件,注意这里第三个参数要设为false,这个参数表示是否以只读方式打开,因为我们要保存原文件,所以以可写方式打开
Dispatch selection=app.getProperty("Selection").toDispatch();//获得对Selection组件
Dispatch.call(selection, "HomeKey", new Variant(6));//移到开头
Dispatch Hyperlinks = Dispatch.get(doc, "Hyperlinks").toDispatch();
int nHyperlink = Dispatch.get(Hyperlinks, "count").toInt();
System.out.println("hyper="+nHyperlink);
for (int i = 0; i < nHyperlink; i++) {
Dispatch hyperlink=Dispatch.invoke(Hyperlinks, "item",Dispatch.Method,new Object[]{new Integer(i+1)},new int[1]).toDispatch();
Dispatch.put(hyperlink, "TextToDisplay", "wml");
Dispatch.call(hyperlink, "delete");

}
Dispatch.call(doc, "Save"); //保存
Dispatch.call(doc,"Close",new Variant(false));
} catch (Exception e) {
e.printStackTrace();
} finally {app.invoke("Quit", new Variant[]{});
app.safeRelease();
}
}
}

我想把所有的doc文件中的超链接获取,然后用wml全部替换。现在执行总是报错,只能修改一部分

...全文
169 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
amdgaming 2009-10-30
  • 打赏
  • 举报
回复
这个还真不会。。
liruanjianyiyuan 2009-10-30
  • 打赏
  • 举报
回复
顶下
老张-AI 2009-10-29
  • 打赏
  • 举报
回复
帮顶下
goodmrning 2009-10-29
  • 打赏
  • 举报
回复
mark!
下载前可以先看下教程 https://pan.quark.cn/s/aa97f4fdcfd7 在Java开发情境下,将Word文档转化为PDF格式是一项普遍的需求,尤其是在处理报告撰写、文档自动化处理或跨平台文件格式迁移等场景中。 Apache POI与iText是两个极具价值的库,分别适用于处理Microsoft Office系列文件格式(例如Word文档)以及生成PDF文件。 下面将详细阐述这两个库的相关信息以及如何协同使用它们将Word文档转换为PDF格式:1. **Apache POI**: - Apache POI作为一个开源项目,赋予Java开发者读取、写入以及修改Microsoft Office文件格式的权限,涵盖Word(.doc)、Excel(.xls/.xlsx)和PowerPoint(.ppt/.pptx)等多种文件类型。 - 通过运用POI,我们能够获取Word文档中的文本内容、样式设定、图像资源等要素,并将其提取出来以便进行后续操作。 - POI提供了HWPFOI和XWPF两个API接口,分别针对老版本Word97-2003(.doc)文件格式和较新版本Word2007及以上(.docx)文件格式提供支持。 2. **iText**: - iText是一个广受欢迎的Java库,专注于创建和编辑PDF文件。 它提供了一系列的API接口,既可以用来构建全新的PDF文档,也能对已有的PDF文档进行编辑和修改。 - iText支持向PDF文档中添加文本、图像、表格、超链接、注释等元素,并且兼容PDF/A标准,从而保障文档在长期保存后的可读性。 - 在Word到PDF的转换过程中,iText负责构建PDF文档的整体结构,并将从POI解析出的内容插入到该结构中。 3...

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧