我正在研究有效比较两个相似的XML文件和更新过时信息的可能性。
我正在使用的主要XML文件大小约为200-250mb。第二个是小一点。
这两个XML文件看起来很像:
<product>
<Category>BOOK</Category>
<Bookgroup>BOOKF</Bookgroup>
<Productname>Name of the book</Productname>
<Productcode>123456789</Productcode>
<Price>79.00</Price>
<Availability>Stock On Order</Availability>
<ProductURL>www.url.com</ProductURL>
<Release>07.08.2013</Release>
<Author>Name of author</Author>
<Genre>Crime</Genre>
<BookType>Pocket</BookType>
<Language>English</Language>
</product>
正如您所看到的,我正在使用书籍,并且使用具有相同信息的第二个XML文件的目的是我只想要每本书的一个副本以供进一步使用。
基本上我正在试图弄清楚我如何有效地解析第一个XML并检查该书是否存在于第二个XML中。如果存在,我将检查产品信息(价格,可用性等)是否已更新。如果此信息已更新,则还需要在第二个XML中更新。 如果它不存在,则需要将其添加到第二个XML中。
使用XMLReader我能够通过使用类似的方法从第一个XML中快速解析每本书(40秒以上循环遍历4,500万行XML并回显所有书籍) approach as this
当我想检查第二个XML中是否存在此书时,如果需要更新或添加第二个XML,则会出现问题。
例如,是否可以在第二个XML上使用XMLReader并停在具有与我在第一个XML中停止的相同booktitle的节点上然后进行检查?如果是这样的话?