我有一個xml文件(ABC.xml)DOM和SAX複製件(包括兒童),創造巨大的XML文件,我需要複製只有最佳方式,通過使用Java
<Transaction>...</Transaction>
多次(超過100000次),保持Header和Trailer完整,創建最終大小可能高達1GB的NEW.xml。此外,我必須爲每個事務順序增加Uniqueid。
由於我新的xml,我一直在尋找這個最好的方式,並且我很困惑。 任何人都可以請幫助我做到這一點(使用DOM或SAX)和一些代碼的最佳方式。 你也可以給我一些關於它的鏈接。
ABC.xml
========
<?xml version="1.0" encoding="UTF-8"?>
<Header><Datetime><date>20130209</date><Time>01:12</Time></Datetime></Header>
<Transaction>
<Uniqueid>1230001</Uniqueid>
<Affiliate>
<Name>abc</Name>
<Address>
<line1>aaaa</line1>
<line2>bbbb</line2>
<line3>cccc</line3>
</Address>
<Amount>123.00</Amount>
<Currency>USD</Currency>
<Purpose>
<line1>aaaa</line1>
<line2>bbbb</line2>
<line3>cccc</line3>
</Purpose>
</Affiliate>
</Transaction>
<Trailer><TotalTransactions>1</TotalTransactions><TotalAmount>123<TotalAmount> </Trailer>
NEW.xml
=======
<?xml version="1.0" encoding="UTF-8"?>
<Header><Datetime><date>20130209</date><Time>01:12</Time></Datetime></Header>
<Transaction>
<Uniqueid>1230001</Uniqueid>
<Affiliate>
<Name>abc</Name>
<Address>
<line1>aaaa</line1>
<line2>bbbb</line2>
<line3>cccc</line3>
</Address>
<Amount>123.00</Amount>
<Currency>USD</Currency>
<Purpose>
<line1>aaaa</line1>
<line2>bbbb</line2>
<line3>cccc</line3>
</Purpose>
</Affiliate>
</Transaction>
<Transaction>
<Uniqueid>1230002</Uniqueid>
<Affiliate>
<Name>abc</Name>
<Address>
<line1>aaaa</line1>
<line2>bbbb</line2>
<line3>cccc</line3>
</Address>
<Amount>123.00</Amount>
<Currency>USD</Currency>
<Purpose>
<line1>aaaa</line1>
<line2>bbbb</line2>
<line3>cccc</line3>
</Purpose>
</Affiliate>
</Transaction>
<Trailer><TotalTransactions>2</TotalTransactions><TotalAmount>246<TotalAmount></Trailer>
「巨大的文件」自動建議通過DOM的「SAX」:)誰知道 - 一個簡單的「sed」腳本或讀/寫循環中的Java(即簡單的文本I/O)可能更適合DOM或SAX。恕我直言... – paulsm4 2013-02-09 20:58:01