2010-08-22 79 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这样的解决方案,但是当它到达文档的末尾时,它只是停止并且不会尝试解析另一个文档,或者告诉我它完成的流中的哪个位置,以便我可以开始一个新的解析。

回答