这篇文章旨在给自己以后需要时能及时的查到,省得每次都去baidu.

1. xml解析库-GDataXML 
参考文章:http://blog.csdn.net/tangren03/article/details/7868246 
GDataXML下载地址: 
(1)GDataXML.h/m文件 
http://code.google.com/p/gdata-objectivec-client/source/browse/trunk/Source/XMLSupport/ 
(2)DGataDefines.h GDataTargetNamespace.h 文件 
http://code.google.com/p/gdata-objectivec-client/source/browse/trunk/Source/

配置过程: 
(1).引入GDataXML(4个文件) 
<arc模式下>.对GDataXML.m增加非arc注释 -fno-objc-arc 
(2).添加系统库 libxml2.dylib 
(3).Head Search Path中添加 /usr/include/libxml2 
(4).Other linker flags中添加 -lxml2 
(5).xml格式 
================================== 
<?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> 
================================== 
(6).应用 
================================== 
//获取工程目录的xml文件  
    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"users" ofType:@"xml"];  
    NSData *xmlData = [[NSData alloc] initWithContentsOfFile:filePath];  
      
    //使用NSData对象初始化  
    GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:xmlData  options:0 error:nil];  
      
    //获取根节点(Users)  
    GDataXMLElement *rootElement = [doc rootElement];  
      
    //获取根节点下的节点(User)  
    NSArray *users = [rootElement elementsForName:@"User"];  
      
    for (GDataXMLElement *user in users) {  
        //User节点的id属性  
        NSString *userId = [[user attributeForName:@"id"] stringValue];  
        NSLog(@"User id is:%@",userId);  
          
        //获取name节点的值  
        GDataXMLElement *nameElement = [[user elementsForName:@"name"] objectAtIndex:0];  
        NSString *name = [nameElement stringValue];  
        NSLog(@"User name is:%@",name);  
          
        //获取age节点的值  
        GDataXMLElement *ageElement = [[user elementsForName:@"age"] objectAtIndex:0];  
        NSString *age = [ageElement stringValue];  
        NSLog(@"User age is:%@",age);  
        NSLog(@"-------------------");  
    }

iOS开发中常用第三方库的使用和配置-GDataXML的更多相关文章

  1. IOS学习:常用第三方库(GDataXMLNode:xml解析库)

    IOS学习:常用第三方库(GDataXMLNode:xml解析库) 解析 XML 通常有两种方式,DOM 和 SAX: DOM解析XML时,读入整个XML文档并构建一个驻留内存的树结构(节点树),通过 ...

  2. iOS开发之常用第三方框架(下载地址,使用方法,总结)

    iOS开发之常用第三方框架(下载地址,使用方法,总结) 说句实话,自学了这么久iOS,如果说我不知道的但是又基本上都摸遍了iOS相关知识,但是每次做项目的时候,遇到难一点的地方或者没试过的东西就闷了. ...

  3. Android开发中常用的库总结(持续更新)

    这篇文章用来收集Android开发中常用的库,都是实际使用过的.持续更新... 1.消息提示的小红点 微信,微博消息提示的小红点. 开源库地址:https://github.com/stefanjau ...

  4. iOS开发中常用的数学函数

    iOS开发中常用的数学函数 /*---- 常用数学公式 ----*/ //指数运算 3^2 3^3 NSLog(,)); //result 9 NSLog(,)); //result 27 //开平方 ...

  5. iOS开发中使用静态库 .a 文件

    ​​iOS开发中,在使用一些第三方库时,可能是一个静态库(比如GPUImage).这种情况下,需要编译出静态库文件(.a) ,然后配合响应的头文件(.h 文件)使用. 编译静态库,直接在Xcode中编 ...

  6. iOS——Xcode中添加第三方库

    一.只有.h和.a文件的库 1.向项目中添加三方库文件 如果添加的第三方库只有.h和.a文件,直接把文件夹拖进项目下面,这时会弹出下面的提示框,一定要勾选下面选择的选项: 这里要注意,在Add to ...

  7. python中常用第三方库记录

    python中有很多很好用的第三方库,现在记录一下这些库以及如何下载 一.virtualenv,这是一个可以将生产环境隔离开的python库,非常好用 在linux下使用pip install vir ...

  8. iOS开发中常用的分类方法---UIImage+Category

    在开发中使用分类对原有的系统类进行方法扩展,是增强系统原有类功能的常见做法. /** * 自由拉伸一张图片 * * @param name 图片名字 * @param left 左边开始位置比例 值范 ...

  9. iOS开发中常用的手势---边缘手势

    说明:以下方法是开发中使用的方法,有什么不对的或者好的方法,请多多指教! 此处的边缘手势是用来控制左侧抽屉视图的弹出以及收回. 添加手势 : 页面上有多个手势时需要遵循 UIGestureRecogn ...

随机推荐

  1. Umbraco(5)-Creating Master Template Part 1(翻译文档)

    原文地址:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/umbraco5-creating-master-template-par ...

  2. [转]Webservice client timeout

    本文转自:http://social.msdn.microsoft.com/Forums/vstudio/en-us/ed89ae3c-e5f8-401b-bcc7-333579a9f0fe/webs ...

  3. Strom实现数字累加Demo

    import java.util.Map; import backtype.storm.Config; import backtype.storm.LocalCluster; import backt ...

  4. hdu 4744 最小费用流

    #include <cstdio> #include <queue> #include <cstring> #include <cmath> #defi ...

  5. [转]如何烧录tizen镜像文件?(图文教程)

    http://blog.csdn.net/flydream0/article/details/9179143 上一篇文章我已讲过如何制作镜像文件(http://blog.csdn.net/flydre ...

  6. [转]移动App测试中的最佳做法

    Daniel Knott 用过各种不同编程语言和软件质量保证工具.他在软件开发和测试方面干了七年,自2010年起,他一直在德国汉堡的XING AG公司就职,几个项目里,比如XING调查和XING建议, ...

  7. Matlab之文件操作

    1.判断是否存在文件夹:if (exist(folderName,'dir')) 2.创建文件夹:mkdir(folderName) 3.删除文件夹:rmdir(folderName,'s') 4.当 ...

  8. 数理方程:Laplace变换 & 留数(更新中)

    更新:25 APR 2016 Laplace变换 设函数\(f(t)\)在\(t>0\)时有定义,积分 \(F(s)=\int_0^{+\infty}f(t)e^{-st}dt \qquad ( ...

  9. 关于SVN下载代码和Android Studio里面导入别人代码build tools不一致问题总结

    项目build tools的sdk我没有 网络问题没法下载. 解决问题 方法 1.下载对应的SDK.需要VPN,或者FQ 2.将bulid.gradle的内容用下面的内容替换 // Top-level ...

  10. Oracle数据库对象_同义词

    同义词是一种数据库对象,它是为一个数据库对象定义的别名,使用同义词的主要目的是为了简化SQL语句的书写. 同义词的概念和类型 利用同义词可以为用户的一个对象,或者其他用户的一个对象定义别名,从而简化命 ...