【发布时间】:2014-09-04 08:40:51
【问题描述】:
我正在解析一个 XML 文档。它工作正常。但是一个值没有被解析。 这是xml文档 http://api.openweathermap.org/data/2.5/forecast/daily?q=Kataragama&mode=xml&units=metric&cnt=7
日期值未解析。
private String day="time";
public String getDay() {
return day;
}
public void parseXMLAndStoreIt(XmlPullParser myParser) {
int event;
String text=null;
try {
event = myParser.getEventType();
while (event != XmlPullParser.END_DOCUMENT) {
String name=myParser.getName();
switch (event){
case XmlPullParser.START_TAG:
break;
case XmlPullParser.TEXT:
text = myParser.getText();
break;
case XmlPullParser.END_TAG:
if(name.equals("time")){
day = myParser.getAttributeValue(null,"day");
}
else{
}
break;
}
event = myParser.next();
}
parsingComplete = false;
} catch (Exception e) {
e.printStackTrace();
}
}
Main.java
day.setText(obj.getDay());
请帮我解决这个问题。提前致谢。
【问题讨论】:
-
遇到
XmlPullParser.START_TAG时不应该检索属性吗? -
你能解释一下吗
-
将
if (name...中的case代码部分移动到START_TAG。 -
非常感谢。它奏效了。
-
您是否正在执行 else 语句中的任何任务以及调试 if 语句中 day 的值 if(name.equals("time")){ day = myParser.getAttributeValue(null,"天”); } 其他{ }
标签: android xml-parsing android-xmlpullparser