我正在编写一个使用XmlPullParser解析XML Feed的Android应用程序。
这是我试图解析的XML:
这是它正在爆炸的代码:
public List parseRouteInfo(InputStream in) throws XmlPullParserException, IOException {
try {
XmlPullParser parser = Xml.newPullParser();
parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, false);
parser.setInput(in, null);
// This is the line
parser.nextTag();
parser.require(XmlPullParser.START_TAG, ns, "RoutePattern");
return readPatterns(parser);
} finally {
in.close();
}
}
这是抛出的异常:
org.xmlpull.v1.XmlPullParserException: unexpected type (position:END_DOCUMENT null@1:1 in java.io.InputStreamReader@416d80a8)
要让系统接受该网址,我将URL参数中的&
字符更改为&
,但除此之外我跟Android XML Parsing Tutorial密切关注可能的。
我理解为什么会抛出异常(找不到START_TAG
或END_TAG
),但我无法弄清楚为什么解析器位于END_DOCUMENT
。
答案 0 :(得分:0)
这是罪魁祸首:
要让系统接受该网址,我将URL参数中的
&
字符更改为&
;
由于某种原因,系统没有接受没有更改的URL,但现在似乎没问题。