java - 替换word文件中的标签

标签 java docx4j

我在一个word文件中有一些标签,看起来像<tag> .
现在,我使用 docx4j 获取 Word 文件的内容,并循环遍历每一行并搜索此标签。当我找到一个时,我将其替换为字符串。但是我尝试过的这段代码不起作用,现在我真的不知道如何实现它!

这是我已经尝试过的代码:

WordprocessingMLPackage wpml = WordprocessingMLPackage.load(new File(path));

MainDocumentPart mdp = wpml.getMainDocumentPart();

List<Object> content = mdp.getContent();
String line;
for (Object object : content) {
    line = object.toString();
    if (line.contains("<tag>")) {
        line.replace("<tag>", "<newTag>");
    }
}

有什么技巧或解决方案可以帮助我实现这一目标吗?

最佳答案

您的问题之一是您修改了 String line这对任何事情都没有影响。 line.replace("<tag>", "<newTag>");该操作的结果将被忽略。你肯定想用它来做某事,对吧?

另外,如果 object在你的循环中不是一个instaneOf String ,然后lineobject指向不同的对象。

您需要修改内容,但不需要修改操作方式。请阅读getting started

源代码download section中还有很多示例(示例代码)

如果您在阅读入门指南后遇到任何具体问题,我们将很乐意为您提供帮助。

关于java - 替换word文件中的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17486490/

相关文章:

Java HttpPost 到 php API

java - 扫描仪在使用 next() 或 nextFoo() 后跳过 nextLine()?

jaxb - XMLDirectMapping - 未提供转化值(value)

java - 使用 docx4j-3.2.1 将 docx 转换为 pdf 时格式丢失

java - 如何使用 Docx4J 为 pdf 输出设置字体

java - 一项 Activity 中的 appcompat 和 fragment

java - 如何初始化 MessageSource 以注入(inject) Controller ?

java - 在 android 中如何以编程方式列出使用数据连接的应用程序?

xpath - 我正在使用 docx4j 来读取 .docx 文件,我需要获取文档的段落并替换字符串

java - 如何使用docx4j将漂亮的JSON打印到word文档中?