美文网首页我爱编程
iOS 网络之数据解析JSON&XML

iOS 网络之数据解析JSON&XML

作者: Lambo316 | 来源:发表于2016-06-28 10:08 被阅读49次

    一、解析JSON类型数据

    //获取文件路径

    NSString *path = [[NSBundle mainBundle] pathForResource:@"ActivityList" ofType:@"txt"];

    //将文件数据读入data中

    NSData *data = [NSData dataWithContentsOfFile:path];

    //用系统方法NSJSONSerialization解析,得出最外层的数据类型

    NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];

    二、XML类型数据解析

    1、导入第三方解析工具:GDataXMLNode

    2、在工程中的Bulid Phases先添加libxml2.dylib动态库

    3、在工程中的build settings找到Header Search Path项,添加/usr/include/libxml2

    //获取文件路径

    NSString *path = [[NSBundle mainBundle] pathForResource:@"Cartoon" ofType:@"xml"];

    //将文件数据读入data中

    NSData *data = [NSData dataWithContentsOfFile:path];

    //创建GDataXMLDocument对象,此时XML文件内所有节点以树的形式存在GDataXMLDocument

    GDataXMLDocument *dom = [[GDataXMLDocument alloc] initWithData:data options:0 error:nil];

    //获取根节点,根节点里面包含了XML得所有信息

    GDataXMLElement *rootElement = dom.rootElement;

    //    NSLog(@"rootElement-->%@",rootElement.name);

    for (GDataXMLElement *subElement in rootElement.children) {

    //        NSLog(@"subElement-->%@",subElement.name);

    for (GDataXMLElement *child in subElement.children) {

    //            NSLog(@"child--->%@",child.name);

    Cartoon *cartoon = [[Cartoon alloc] init];

    for (GDataXMLElement *subChild in child.children) {

    [cartoon setValue:subChild.stringValue forKey:subChild.name];

    //                NSLog(@"subChild-->>>>%@",subChild.name);

    }

    相关文章

      网友评论

        本文标题:iOS 网络之数据解析JSON&XML

        本文链接:https://www.haomeiwen.com/subject/wdktjttx.html