我检查了xmlpullparser解析器异常,但它给我提供了其他Android和SOUP的问题。我使用J2me和普通HTTPrequest来获取XML,使用kXMl解析xml文本。下面是我正在处理的代码。上面是更多的解析代码,它们工作得很完美。
if (parser.getName().equals("comments")) {
event = parser.next();
boolean flag = false;
if (parser.getName().equals("comment")) {
flag = true;
System.out.println("Flag is true");
}
while (flag) {
event = parser.next();
Questioncomments.addComponent(new Label(parser.nextText()));
event = parser.next();
System.out.println("Inside the While");
if (!parser.getName().equals("comment")) {
flag = false;
System.out.println("Flag is false");
}
}
Questioncomments.repaint();
}我要发送到这个端- <comments><comment>Awesome Question @dulitha<idComment></idComment></comment></comments>
错误是-
com.petmill.mobile.view.qanda.QuestionCanvas.setData(QuestionCanvas.java:189) at com.petmill.mobile.view.qanda.QuestionsList$5$1$1.actionPerformed(QuestionsList.java:119)的org.kxml2.io.KXmlParser.exception(+47) at org.kxml2.io.KXmlParser.nextText(+14)的
org.xmlpull.v1.XmlPullParserException:前提条件: START_TAG (位置:文本古怪的问题.@1:399 in java.io.InputStreamReader@f828ed68)
错误出现在我试图获取文本的行- parser.nextText()。如何解析xml以获得所需的数据.提前谢谢。
发布于 2011-08-28 18:16:00
当您调用START_TAG事件时,您似乎不在parser.nextText().事件中,在使用parser.getEventType()调用parser.nextText()时,检查是否处于START_TAG事件。我怀疑您在<comments>和<comment>标记之间有一些空白,因此您的解析器不在您期望的事件中。
也许您也应该考虑一种更安全的方法来解析这个xml。
发布于 2011-08-24 04:27:41
<comments>
<comment>Awesome Question @dulitha
<idComment></idComment>
</comment>
</comments>这是无效的xml。
https://stackoverflow.com/questions/7161959
复制相似问题