您的位置:首页 > Web前端 > Node.js

【iOSXML解析】之:GDataXMLNode方法解析案例

2013-11-12 09:46 567 查看
1.首先得包含该文件。

GDataXMLNode.h

GDataXMLNode.m

(google的那有)
2.在build phases 中包含

libxml2.dylib库。

3.build settings 设置 header search paths:

${SDK_DIR}/usr/include/libxml2

4.xml文件放在supporting files 文件下

<?xml version="1.0" encoding="utf-8"?>

<Users>

<User id="001">

<name>Ryan</name>

<age>24</age>

</User>

<User id="002">

<name>Tang</name>

<age>23</age>

</User>

</Users>
5..m文件中写入代码:

- (void)viewDidLoad
{

[superviewDidLoad];

// Do any additional setup after loading the view, typically from a nib.

//获取工程目录的xml文件

NSString *filePath = [[NSBundlemainBundle]
pathForResource:@"hello"ofType:@"xml"];

NSData *xmlData = [[NSDataalloc]
initWithContentsOfFile:filePath];

//使用NSData对象初始化

GDataXMLDocument *doc = [[GDataXMLDocumentalloc]
initWithData:xmlData options:0
error:nil];

//获取根节点(Users)
GDataXMLElement *rootElement = [doc
rootElement];

//获取根节点下的节点(User)
NSArray *users = [rootElement
elementsForName:@"User"];

for (GDataXMLElement *userin users) {

//User节点的id属性

NSString *userId = [[userattributeForName:@"id"]stringValue];
NSLog(@"User id is:%@",userId);

//获取name节点的值

GDataXMLElement *nameElement = [[userelementsForName:@"name"]objectAtIndex:0];
NSString *name = [nameElement
stringValue];

NSLog(@"User name is:%@",name);

//获取age节点的值

GDataXMLElement *ageElement = [[userelementsForName:@"age"]objectAtIndex:0];
NSString *age = [ageElement
stringValue];

NSLog(@"User age is:%@",age);

NSLog(@"-------------------");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: