Mic*_*ker 17 java xml nonblocking
我正在寻找一种XML解析器,而不是从InputStream或InputSource解析,而是允许将文本块推送到解析器中.例如,我希望得到以下内容:
public class DataReceiver {
private SAXParser parser = //...
private DefaultHandler handler = //...
/**
* Called each time some data is received.
*/
public void onDataReceived(byte[] data) {
parser.push(data, handler);
}
}
Run Code Online (Sandbox Code Playgroud)
原因是我想要一些能够与NIO网络库一起使用的东西,而不是必须恢复到支持阻塞InputStream所需的每个连接模型的线程.
这是来自 Xerces J-Users 邮件列表的帖子(2009 年 4 月),原始发帖者也有完全相同的问题。“Jeff”给出了一个可能非常好的回应,但没有对原始发帖人的回应进行后续跟进:
http://www.nabble.com/parsing-an-xml-document-chunk-by-chunk-td22945319.html
它可能足够新,可以出现在列表中,或者至少有助于搜索。
编辑
找到了另一个有用的链接,提到了一个名为 Woodstox 的库,并描述了 Stream 与基于 NIO 的解析器的状态以及模拟流的一些可能的方法:
http://markmail.org/message/ogqqcj7dt3lwkbov