我知道Java stax解析器适用于InputStreams。但是,我需要手动将字符串块推送到解析器而不是输入流。
有可能吗?
亲切的问候,
答案 0 :(得分:0)
您可以围绕ByteArrayInputStream
块的字节使用String
包裹。
快速示例
XMLInputFactory factory = XMLInputFactory.newFactory();
XMLStreamReader reader = factory.createXMLStreamReader(
new ByteArrayInputStream("<start></start>".getBytes("UTF-8"))
);
while (reader.hasNext()) {
int event = reader.next();
switch (event) {
case (XMLStreamConstants.START_ELEMENT): {
System.out.println(reader.getLocalName());
break;
}
}
}
<强>输出强>
start