gpt4 book ai didi

java - 使用 xinclude 标签将多个 XML 文件加入到单个文件中

转载 作者:行者123 更新时间:2023-11-30 12:01:50 24 4
gpt4 key购买 nike

我正在 IzPack 中创建安装程序。它非常大,我已经使用 标记适本地分解了我的 XML 文件。不幸的是,当您构建安装程序时,IzPack 不会将它们组合在一起。这需要您使用安装程序打包文件,这是行不通的。

我正要开始用 Java 编写一个工具来加载 XML 文件并组合它们,但我不想重新发明轮子。

Java XML 库是否提供 xinclude 的 native 处理?谷歌似乎没有出现太多。

如果我必须自己写这个也没什么大不了的,只是想和你们确认一下。谢谢。

用于示例目的的 XML 格式:文件1.xml

<?xml version="1.0" encoding="iso-8859-1" standalone="yes" ?>
<installation version="1.0">
<packs>
<pack name="Transaction Service" id="Transaction Service" required="no" >
<xinclude href="example/File2.xml" />
</pack>
</packs>

文件2.xml

<xfragment>
<file src="..." />
</xfragment>

File2 不需要标准的 XML header 。 xml 文件在构建时被解析,因为它指定的资源包含在安装程序中。不包括的是实际的 XML 信息(写入文件的顺序、放置文件的位置等)

我希望产生的结果:

<?xml version="1.0" encoding="iso-8859-1" standalone="yes" ?>
<installation version="1.0">
<packs>
<pack name="Transaction Service" id="Transaction Service" required="no" >
<file src="..." />
</pack>
</packs>

谢谢,我现在要开始用 Java 将其组合在一起,但希望有人能给出一个简单的答案。

蒂姆·雷诺兹

最佳答案

如果您无法让 xinclude 工作并且您正在使用 Ant,我建议您使用 XMLTask ,这是 Ant 的插件任务。它会做很多聪明的事情,包括您感兴趣的一件事 - 用片段构造一个 XML 文件。

例如

<xmltask source="templatefile.xml" dest="finalfile.xml">
<insert path="/packs/pack[1]" position="under" file="pack1.xml"/>
</xmltask>

(警告 - 以上是根据内存完成的,所以请查阅文档!)。

请注意,在上面,文件 pack1.xml 不必具有根节点。

关于java - 使用 xinclude 标签将多个 XML 文件加入到单个文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72996/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com