【问题标题】:Merging XML Web Content Files合并 XML Web 内容文件
【发布时间】:2012-11-07 22:36:49
【问题描述】:

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

【问题讨论】:

    标签: java xml eclipse merge sax


    【解决方案1】:

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

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

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

    在您的用例中,我以前没有使用 XSLT 做过的唯一事情是一次检查两个源文件。但是this question 只是讨论这样的事情。

    【讨论】:

    • 我认为缩小了我想做的事情。我有两个 Dom 文档,想要导航一个 dom,并且在导航时添加它具有的任何元素,而我正在比较它的 DOM 没有。 XSLT 是为这样的事情设计的吗?
    • @DuncanKrebs 我在回答中添加了更多信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-01
    • 2014-07-26
    • 1970-01-01
    相关资源
    最近更新 更多