2010-03-08 2 views
0

Я построил дерево XML из файла XML. При построении я делаю initWithKnd: или initWithKind: options: метод.Проверьте вид узла в дереве XML

Как проверить, имеет ли узел элемент или CDATA или какой-либо другой вид при трассировке дерева XML.

+0

Я что-то упустил или что конкретно вы его кодируете? JavaScript? –

+0

Sune Rasmussen: вопрос помечен как какао. –

ответ

1

К виду NSXMLNode предоставляется метод kind, возвращаемое значение - из перечисления NSXMLNodeKind.

NSXMLNodeKind kind = [node kind]; 

Обратите внимание, что для узлов CDATA нет значения. Они становятся текстовыми узлами, поскольку разница между текстом и CDATA не сохраняется в API.

0

При трассировке дерева XML можно получить текущий узел, а затем проверить, принадлежит ли тип узла элементу или CDATA или любому другому виду.

NSArray *array = [rootNode children]; 
NSXMLNode *node = [array objectAtIndex:index]; 

if([node kind] == NSXMLElementKind)// depending on one's requirement 
{ 
    // doSomething 
} 
+0

@iSight Это просто подтверждает мой ответ. –

Смежные вопросы