Intereting Posts
Как добавить значок (изображение, логотип ..) в строку состояния Удаление адресной строки из браузера (для просмотра на Android) Воспроизведение кнопки «Готово» в EditText? Как использовать Kotlin с Proguard Регистр вещательного приемника в манифесте против активности Проверьте ход загрузки и загрузки (API для Google Диска для Android или Java) Изменение цвета подсказки EditText при использовании TextInputLayout Использование Android AccountManager для аутентификации пользователей для сервера Начальная позиция PagerAdapter Android: как я могу сказать, отображается ли мягкая клавиатура или нет? Технология писать iPhone, BlackBerry и Android телефон одновременно? Как выйти из полноэкранного веб-приложения Приложение Android запоминает свои данные после удаления и переустановки Как добиться анимации пульсации с помощью библиотеки поддержки? Android SupportLib – FrameLayout в CoordinatorLayout с AppBarLayout, потребляющим всю высоту экрана

С помощью 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> 

Solutions Collecting From Web of "С помощью SAX Parser получите значение атрибута"

использование

 attributes.getValue(i); 

вместо

 attributes.getQName(i); 

Потому что, как говорит доктор,

GetQName : вернуть квалифицированное (префиксное) имя атрибута.

GetValue : найдите значение атрибута с помощью квалифицированного (префиксного) имени.

См. Этот пример для получения имени и значения атрибута

  @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); } 

Попробуйте метод attributes.getValue(i)