我正在通过 java 代码发送 xml 请求并使用以下代码获取 xml 响应:
BufferedReader rd = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = rd.readLine()) != null) {
sb.append(line + '\n');
}
现在我需要使用 STAX 解析 xml 响应,所以我编写了一个解析方法:
XMLReader reader = new XMLReader();
ArrayList<String> List = reader.parse(connection.getInputStream());
在 parse() 我有 reader = factory.createXMLEventReader(connection.getInputStream());
但是我收到以下错误:
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
Message: Premature end of file.
at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:593)
at com.sun.xml.internal.stream.XMLEventReaderImpl.nextEvent(XMLEventReaderImpl.java:85)
有人可以告诉我我哪里出错了吗?
谢谢,
斯瓦蒂