Как получить имя атрибута узла XML - GDataXMLNode - PullRequest
2 голосов
/ 08 февраля 2012

Как получить имя атрибута узла XML в GDataXMLNode .

Мне нужно получить "anyAttribute" и "anyAttribute2" из этого ...

<anynode anyAttribute="anyvalue" anyAttribute2="123"/>

Есть метод для этого или я должен попробовать другой вариант?

Ответы [ 3 ]

1 голос
/ 22 февраля 2012

Вот пример кода:

  GDataXMLElement *anynode = [GDataXMLNode elementWithName:@"anynode"];
  GDataXMLElement *anyAttribute = [GDataXMLNode attributeWithName:@"anyAttribute" stringValue:@"anyvalue"];
  GDataXMLElement *anyAttribute2 = [GDataXMLNode attributeWithName:@"anyAttribute2" stringValue:@"123"];
  [anynode addAttribute:anyAttribute];
  [anynode addAttribute:anyAttribute2];

Этот фрагмент кода создает узел:

  <anynode anyAttribute="anyvalue" anyAttribute2="123"/>

Теперь, чтобы извлечь значения атрибута из anynode :

  NSString *attribute1 = [anynode attributeForName:@"anyAttribute"].stringValue;
  NSString *attribute2 = [anynode attributeForName:@"anyAttribute2"].stringValue;
1 голос
/ 11 сентября 2013

В вашем случае (и в большинстве других случаев) GDataXMLNode фактически будет экземпляром подкласса GDataXMLElement, поэтому просто уменьшите GDataXMLNode до GDataXMLElement и извлеките атрибуты по их именам (если вы их знаете) или через свойство attribute объектаЭкземпляр GDataXMLElement.

0 голосов
/ 08 февраля 2012

Существует компонент с открытым исходным кодом, называемый "AQXMLParser", который имеет эту функцию. Попробуйте это: http://www.alexcurylo.com/blog/2009/06/09/code-aqxmlparser/

...