2010-08-22 54 views
0

我的iPhone應用程序是基於套接字的,並且一個接一個地接收連續的非分隔的XML文檔流,其中我打算使用基於事件的NSXMLParser進行分析。使用NSXMLParser從連續流解析多個XML文檔

實施例:2文件一個接一個地

<?xml version='1.0' encoding='UTF-8' ?><document name="something"><foo>bar</foo></document><?xml version='1.0' encoding='UTF-8' ?><document name="somethingelse"><bar>foo</bar></document> 

在基於Java的實現的此之後,XML解析器簡單地解析一個流,直到它到達文件的結束,在該指出它執行它的事情,然後開始從流中的該點解析下一個文檔。

問題是NSXMLParser不接受流不告訴我在NSData中它完成分析的哪一點(除了無用的行和列號)。

我已經看到了一些像AQ StreamingXMLParser這樣的解決方案,但是當它到達文檔的末尾時,它只是停止並且不會嘗試解析另一個文檔,或者告訴我它完成的流中的哪個位置,以便我可以開始一個新的解析。

回答