如果这张表是错的,请改正,我不完全确定这个标题是什么。
我正在尝试在android中解析我的XML,并且我的代码应该可以工作,但问题是,我需要进入多个级别的标记。
下面是我的XML的一个示例:
<dsxout>
<uselessTag>unnecasary info</uselessTag>
<results>
<listing>
<title>I'm a Title</title>
<description>very amusing description</description>
</listing>
<listing>
...
</listing>
</results>
</dsxout>这里是我的解析陷入困境的地方:
private List readFeed(XmlPullParser parser) throws XmlPullParserException, IOException {
List entries = new ArrayList();
Toast.makeText(getBaseContext(), "readFeed", Toast.LENGTH_SHORT).show();
parser.require(XmlPullParser.START_TAG, ns, "dsxout");
while (parser.next() != XmlPullParser.END_TAG) {
if (parser.getEventType() != XmlPullParser.START_TAG) {
continue;
}
String name = parser.getName();下面的一行只显示出标记uselessTag和结果
Toast.makeText(getBaseContext(), name, Toast.LENGTH_SHORT).show();
// Starts by looking for the entry tag
if (name.equals("listing")) {
entries.add(readEntry(parser));
} else {
skip(parser);
}
}
return entries;
}问题是它只读取到第二层标签,而不是在结果标签中,所以它找不到清单。
在阅读的同时,我该如何进入另一个层次呢?
发布于 2014-12-23 15:13:19
添加这个语句似乎解决了这个问题。
if (name.equals("results")) {
String nextTokedn = "Next Level " + parser.nextTag();
}https://stackoverflow.com/questions/27622637
复制相似问题