Разбор текста между двумя пустыми элементами XML в Задаче C - PullRequest
0 голосов
/ 03 августа 2010

Я уже знаю, как анализировать XML-элементы, которые содержат контент (<this> Content </this> в Objective C, но в настоящее время я использую веб-сервис, который возвращает нужное мне содержимое между двумя закрытыми элементами (<begin-paragraph/> The content I need <end-paragraph/>), которые я искал в Интернете за любые примеры того, как кто-то еще делал это, но я ничего не мог найти. Если кто-то знает, как читать между двумя пустыми элементами, и хотел бы поделиться, я был бы очень признателен.

Ответы [ 2 ]

2 голосов
/ 03 августа 2010

Я должен сказать, что расцениваю это как злоупотребление XML.

Но я проверил, и, к сожалению, он хорошо сформирован, поэтому NSXMLParser (который, как я полагаю, используется вами) должен быть в состоянии справиться с этим.

В основном вам нужно проверить, в каком элементе вы находитесь, обрабатывая события начального и конечного элементов в вашем NSXMLParserDelegate . Затем после получения сообщения –parser:didEndElement:namespaceURI:qualifiedName: для begin-paragraph захватите весь текст, полученный в -parser:foundCharacters:, пока не получите –parser:didStartElement:namespaceURI:qualifiedName:attributes: для end-paragraph

0 голосов
/ 03 августа 2010

Я не знаю, как выглядит соответствие DOM на iPhone, но общая процедура будет такой:

  1. Перейдите к <begin-paragraph /> в вашем DOM.
  2. Получитьследующий брат этого узла.Это контент, который вам нужен.(Свойство Node :: nextSibling)
  3. Если в нем есть и другие элементы, которые вы хотите, продолжайте собирать их тем же способом, пока не достигнете <end-paragraph />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...