如何解析<;yandex:全文>;androidxml池解析器中的标记
我可以解析以下标记如何解析<;yandex:全文>;androidxml池解析器中的标记,android,xml,parsing,Android,Xml,Parsing,我可以解析以下标记(,),但我无法解析命名空间为()的标记 xmlns:yandex="http://news.yandex.ru". 谁知道如何解决这个问题 谢谢,检查一下这个 示例XML数据 <current> <city id="2643743" name="London"> <coord lon="-0.12574" lat="51.50853"/> <country>GB</country>
(,)
,但我无法解析命名空间为()
的标记
xmlns:yandex="http://news.yandex.ru".
谁知道如何解决这个问题
谢谢,检查一下这个
示例XML数据
<current>
<city id="2643743" name="London">
<coord lon="-0.12574" lat="51.50853"/>
<country>GB</country>
<sun rise="2013-10-08T06:13:56" set="2013-10-08T17:21:45"/>
</city>
<temperature value="289.54" min="289.15" max="290.15" unit="kelvin"/>
<humidity value="77" unit="%"/>
<pressure value="1025" unit="hPa"/>
</country>
上面的代码将XML数据流设置为PullParser,并发送到函数parseXMLAndStoreIt()
parseXMLAndStoreIt(XmlPullParser)
我正在尝试用名称空间解析xml标记,例如:这个示例解析一个简单的标记,需要用名称空间解析标记
InputStream stream = conn.getInputStream();
XmlPullParserFactory xmlFactoryObject = XmlPullParserFactory.newInstance();
XmlPullParser myparser = xmlFactoryObject.newPullParser();
myparser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES
, false);
myparser.setInput(stream, null);
parseXMLAndStoreIt(myparser);
stream.close();
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("country")){
country = text;
}
else if(name.equals("humidity")){
humidity = myParser.getAttributeValue(null,"value");
}
else if(name.equals("pressure")){
pressure = myParser.getAttributeValue(null,"value");
}
else if(name.equals("temperature")){
temperature = myParser.getAttributeValue(null,"value");
}
else{
}
break;
}
event = myParser.next();
}
parsingComplete = false;
} catch (Exception e) {
e.printStackTrace();
}
}