2012-01-18 2 views
0

Как разобрать этот вид XML-файла с помощью NSXMLParser: http://www.nationalbanken.dk/dndk/valuta.nsf/valuta.xml?синтаксический анализ XML-файла NSXMLParser

Я использовал пример землетрясений яблока, но построение XML ленты отличается, поэтому оно не разобрать мой канал ..

+0

Это очень открытый вопрос, и вы даете очень мало деталей о том, что вы пробовали до сих пор. Вы ожидаете, что мы напишем вам ваш код? – fzwo

ответ

0

Как вы не объясните, что проблема с XML, я буду считать, что вам относятся к тому факту, что ваш XML-файл содержит множество атрибутов (code="EUR" и т. д.) и никаких значений в элементах. Если вы посмотрите на NSXMLParserDelegate reference, вы увидите, что у вас есть функция

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName attributes:(NSDictionary *)attributeDict 

Последний параметр, attributeDict, будет содержать атрибуты элемента, который вы в данный момент находитесь в. Просто извлеките атрибуты отсюда и делайте с ними то, что вы хотите.

0

Bendik было правильным, так как я не знаю причину вашего разрыва, так что я должен предложить вам следующие шаги, убедитесь, что вы прошли все успешно этапы во время синтаксического анализа,

  • Создание XML объект парсера.
  • Set Делегат парсер.
  • Как говорит Бендик, используйте следующий метод делегата для разбора каждого узла корня xml.

    - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName attributes:(NSDictionary *)attributeDict

  • Использование attributeDict типа NSDictionary вы можете получить значения для соответствующего ключа «атрибута»

  • Dont забыл поставить пустую проверку, прежде чем принимать значения атрибутов (во время синтаксического анализа XML-файлов, которые получить символ пробела для каждого узла).
Смежные вопросы