Iphone 如何使用xml解析器解析嵌套的xml?
如何获取此Iphone 如何使用xml解析器解析嵌套的xml?,iphone,ios,xml,xml-parsing,gdataxml,Iphone,Ios,Xml,Xml Parsing,Gdataxml,如何获取此和。我试了很多,但都搞砸了 <list> <OrderData HASH="1843180441"> <id>26</id><customer> <CustomerData HASH="882063912"> <id>1</id> <sex>Male</sex> <firstName>admin</firstName>
和
。我试了很多,但都搞砸了
<list>
<OrderData HASH="1843180441">
<id>26</id><customer>
<CustomerData HASH="882063912">
<id>1</id>
<sex>Male</sex>
<firstName>admin</firstName>
<lastName>admin</lastName>
<companyName>Individual</companyName>
<userName>admin</userName>
<password>21232f297a57a5a743894a0e4a801fc3</password>
<lastLogin>2012-01-26T12:11:38</lastLogin>
<status>A</status>
<created>2011-09-28T07:01:47</created>
<modified>2012-01-26T12:11:38</modified>
<canChangePassword>Y</canChangePassword>
<isDeleted>false</isDeleted>
<abn/>
<abnBranch/>
<storeCredit>50000.0</storeCredit>
<billingAddress>
<list>
<AddressData HASH="768553743">
<id>2</id>
<firstName>admin</firstName>
<lastName>admin</lastName>
<addressLine1>suite: 1307, 9 Yara Street</addressLine1>
<addressLine2>dgdgdf</addressLine2>
<postCode>3000</postCode>
<suburb>dfgdfg</suburb>
<city>sadf</city>
<phone>4456</phone>
<mobile/>
<fax/>
<active>true</active>
<type>C</type>
<email>afzal.bitmascot@gmail.com</email>
<log/>
</AddressData>
</deliveryAddress>
<purchaseDate>2011-10-03T03:23:48</purchaseDate>
</OrderData>
<OrderData HASH="1569451006"></OrderData>
<OrderData HASH="1449383081"></OrderData>
<OrderData HASH="1438157618"></OrderData>
<OrderData HASH="269308788"></OrderData>
</list>
26
1.
男性
管理
管理
个人
管理
21232f297a57a5a743894a0e4a801fc3
2012-01-26T12:11:38
A.
2011-09-28 07:01:47
2012-01-26T12:11:38
Y
假的
50000
2.
管理
管理
套房:雅拉街9号1307
DGDF
3000
dfgdfg
萨达夫
4456
真的
C
阿夫扎尔。bitmascot@gmail.com
2011-10-03T03:23:48
到现在为止,我已经做到了
NSLog(@“Enering在xml文件中”);
NSArray*getNumberOfOrder=[[xmlDocument rootElement]元素名称:@“OrderData”];
for(getNumberOfOrder中的GDataxmlement*e){
对于(inti=0;i我会尝试类似的方法。我会循环遍历XML文档,并将其存储在数组中
请注意NSLog(),它将打印到控制台并帮助您查看发生了什么
xmlDocument = [[GDataXMLDocument alloc]initWithData:xmlData options:0 error:nil];
NSArray *temp = [xmlDocument.rootElement elementsForName:@"OrderData"];
for(GDataXMLElement *e in temp) {
[outputArray addObject:e];
NSLog(@"%@", e);
}
然后,我会循环遍历数组,当我想要检索一个结果(比如客户的名字)时,我会这样做
for (int i = 0; i < [outputArray count]; i++) {
NSString *firstName = [[[[[[[[outputArray objectAtIndex:i]elementsForName:@"customer"] objectAtIndex:0] elementsForName:@"CustomerData"] objectAtIndex:0] childAtIndex:2]stringValue];
}
for(int i=0;i<[outputArray count];i++){
NSString*firstName=[outputArray objectAtIndex:i]元素名称:@“客户”]objectAtIndex:0]元素名称:@“客户数据”]objectAtIndex:0]childAtIndex:2]stringValue];
}
如果您发布XML文档的完整部分,这将有助于NSLog语句打印的内容是什么?如果没有,那么您在解析文件之前做了一些错误。看到更多的XML文件也会很好,我相信我们可以让它工作。当我尝试解析文件时,我会出错。如果没有,那就是不是正确的XML结构。您还需要查看NSLog在for循环中打印出的内容,如果没有打印出任何内容,则在解析之前会出现错误。当我不知道XML文件结构或您遇到的错误时,很难为您提供帮助。请参阅本教程,也许这将帮助您解决可能重复的问题