java - 合并 XML Web 内容文件

标签 java xml eclipse merge sax

我处于一个独特的位置,正在将一堆 xml 内容文件合并到客户端特定的 svn 分支中,问题是我不能只是复制/粘贴,因为该客户端定义了不同的翻译和其他标签。尝试通过 svn merge 来做到这一点是令人畏惧的,大约 50 个文件和许多客户端都无法解决。所以我的问题是如何编写一个 Eclipse 插件,甚至一个 Java 程序,它需要两个 xml 文件作为源、目标。源中添加的不在目标中的所有元素以及目标中具有不同标签的现有元素不会更改。我能很快写完这篇文章吗?我想使用什么解析器,人们会使用什么工具来快速实现这一点。我可以快速编写插件的实际代码来进行比较,我需要一些输入。 - 邓肯

最佳答案

XSLT 是一个非常有用的工具。它专门用于将一个 XML 文档或任何子变体(例如 HTML)转换为另一个文档。这似乎就是你正在做的事情。

使用 XSLT,您可以定义如何在 XSL 文件中转换 XML 的规则;该 XSL 文件包含简单的逻辑,用于指定要更改的 XML 部分以及如何更改它们。接下来,您输入 XSL 规则和 XML 源文档,它会输出新的 XML 结果。

使用 XSLT 的好处是您可以调整它并再次运行它。您可以在批量源 XML 文件上运行它。请注意,您可以在许多上下文中使用它也很好。您可以将其作为命令行工具执行,将指向 XML 源和 XSL 规则的参数传递给该工具,也可以在 Java 代码中使用它。这是相当灵活的。

在您的用例中,我之前使用 XSLT 做过的唯一一件事是同时检查两个源文件。但是this question讨论的正是这样的事情。

关于java - 合并 XML Web 内容文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13463412/

相关文章:

java - 如何将 .dic 和 .aff 文件添加到 java jar 中?

java - 使用 Java Config 的 Spring 集成和 JMS

java - 如何将字节数组写入流程构建器的 OutputStream (Java)

xml - WP7 从 xml Web 服务获取和存储数据以供整个项目使用

java - 无法从 Eclipse、ADT 22.6 创建或编辑 Android 虚拟设备 (AVD)

Eclipse 将 c++ 文件标记为不正确并且不允许编译

java - 正则表达式检查字符串第一个字符是否是数字

java - myeclipse 中的注释需要 java pmd 规则

python - 如何使用 lxml 创建文本节点?

python - 用有序字典替换字典推导式和defaultdict