С помощью SAX Parser получите значение атрибута
Я анализирую XML из Интернета с помощью Android. В приведенном ниже коде показан пример XML. У меня проблема: я не могу получить строковое значение тега элемента. Когда я использую name = attributes.getQName(i);
, он выдает имя, а не значение атрибута.
<weatherdata>
<timetags>
<item name="date">
<value>20/04/2012</value>
<unit/>
<image/>
<class>dynamic</class>
<description>The current date</description>
</item>
Ответы
Ответ 1
использовать
attributes.getValue(i);
вместо
attributes.getQName(i);
потому что doc говорит:
getQName: вернуть имя с атрибутом (префикс).
getValue. Посмотрите значение атрибута с помощью квалифицированного (префиксного) имени.
см. этот пример для получения имени и значения атрибута
Ответ 2
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
if(localName.equalsIgnoreCase("item")){
//currentMessage.setMediaUrl(attributes.getValue(BaseFeedParser.Url));
String valueis=attributes.getValue("name")
}
super.startElement(uri, localName, qName, attributes);
}
Ответ 3
Попробуйте attributes.getValue(i)
метод