Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c Xpath查询无法在目标C中使用GDATEXML_Objective C_Xpath - Fatal编程技术网

Objective c Xpath查询无法在目标C中使用GDATEXML

Objective c Xpath查询无法在目标C中使用GDATEXML,objective-c,xpath,Objective C,Xpath,我正在尝试使用xml解析xml 我有一个查询不起作用,我想知道为什么: <address_component> <long_name>Mars</long_name> <short_name>Mars</short_name> <type>route</type> </address_component> 我做错了什么 =========== 有没有一种方法可以让GDATXML逐行

我正在尝试使用xml解析xml

我有一个查询不起作用,我想知道为什么:

<address_component>
  <long_name>Mars</long_name> 
  <short_name>Mars</short_name> 
  <type>route</type> 
</address_component>
我做错了什么

===========

有没有一种方法可以让GDATXML逐行解析xml? 除了在数组中运行几次xml之外,还有其他方法吗

我想保存长_名称,其中 类型是路线

此XPath表达式应该可以工作:

/address_component[type='route']/long_name

意思:一个
long\u name
元素是
address\u组件的子元素
根元素具有
类型
具有
'route'
字符串值的子元素。

下一个问题我的代码是:NSArray*street=[doc nodesForXPath:@//GeocodeResponse/result/address\u组件[type='route'/long\u name]错误:nil];NSLog(@“count:”,[街道计数];但当我运行此应用程序时crashes@Nico:确保代码中没有输入错误:
“//GeocodeResponse/result/address\u component[type='route'/long\u name”
应该是
“//GeocodeResponse/result/address\u component[type='route']/long\u name”
。其次,源XML中是否有任何名称空间声明,如
xmlns:XXX=“…”
?哦,我键入了错误的名称空间声明,但它是//GeocodeResponse/result/address\u component[type='route']/long_name和xmlcode来自@Nico:在我的测试中,它导致所有60个元素中有10个
long_name
元素。此外,您不需要起始
/
操作符,只需
/
@Nico:我认为您应该用代码问一个特定的
objective-C
问题。
/address_component[type='route']/long_name