Tôi có hai tệp XML có cấu trúc tương tự mà tôi muốn hợp nhất thành một tệp. Hiện tại tôi đang sử dụng EL4J XML Merge mà tôi đã xem qua trong hướng dẫn này. Tuy nhiên, nó không hợp nhất như tôi mong đợi cho các trường hợp vấn đề chính là nó không hợp nhất cả hai tập tin thành một phần tử, một trong đó có 1, 2, 3 và 4. Thay vào đó nó chỉ loại bỏ 1 và 2 hoặc 3 và 4 tùy thuộc vào tệp nào được hợp nhất trước. Vì vậy, tôi sẽ biết ơn bất cứ ai có kinh nghiệm với XML Merge nếu họ có thể cho tôi biết những gì tôi có thể làm sai hoặc cách khác không ai biết về một API XML tốt cho Java có khả năng hợp nhất các tệp như tôi yêu cầu?Hợp nhất hai tệp XML trong Java
Nhiều Nhờ sự giúp đỡ của bạn trong Advance
Edit:
thực sự có thể làm với một số gợi ý tốt về làm điều này để bổ sung thêm một tiền thưởng. Tôi đã thử đề xuất jdigital nhưng vẫn gặp vấn đề với hợp nhất XML.
Dưới đây là mẫu của loại cấu trúc của tệp XML mà tôi đang cố hợp nhất.
<run xmloutputversion="1.02">
<info type="a" />
<debugging level="0" />
<host starttime="1237144741" endtime="1237144751">
<status state="up" reason="somereason"/>
<something avalue="test" test="alpha" />
<target>
<system name="computer" />
</target>
<results>
<result id="1">
<state value="test" />
<service value="gamma" />
</result>
<result id="2">
<state value="test4" />
<service value="gamma4" />
</result>
</results>
<times something="0" />
</host>
<runstats>
<finished time="1237144751" timestr="Sun Mar 15 19:19:11 2009"/>
<result total="0" />
</runstats>
</run>
<run xmloutputversion="1.02">
<info type="b" />
<debugging level="0" />
<host starttime="1237144741" endtime="1237144751">
<status state="down" reason="somereason"/>
<something avalue="test" test="alpha" />
<target>
<system name="computer" />
</target>
<results>
<result id="3">
<state value="testagain" />
<service value="gamma2" />
</result>
<result id="4">
<state value="testagain4" />
<service value="gamma4" />
</result>
</results>
<times something="0" />
</host>
<runstats>
<finished time="1237144751" timestr="Sun Mar 15 19:19:11 2009"/>
<result total="0" />
</runstats>
</run>
sản lượng dự kiến
<run xmloutputversion="1.02">
<info type="a" />
<debugging level="0" />
<host starttime="1237144741" endtime="1237144751">
<status state="down" reason="somereason"/>
<status state="up" reason="somereason"/>
<something avalue="test" test="alpha" />
<target>
<system name="computer" />
</target>
<results>
<result id="1">
<state value="test" />
<service value="gamma" />
</result>
<result id="2">
<state value="test4" />
<service value="gamma4" />
</result>
<result id="3">
<state value="testagain" />
<service value="gamma2" />
</result>
<result id="4">
<state value="testagain4" />
<service value="gamma4" />
</result>
</results>
<times something="0" />
</host>
<runstats>
<finished time="1237144751" timestr="Sun Mar 15 19:19:11 2009"/>
<result total="0" />
</runstats>
</run>
Bạn có thể thêm các kết quả mong muốn? –
Đã thêm kết quả mong đợi khi thêm kết quả vào nút kết quả là điều cricual nhất. –