• OC1-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>
            <name>xiaohei</name>
            <age>23</age>
        </User>
    </Users>
    //
    //  main.m
    //  OC1-XML文件解析
    //
    //  Created by qianfeng on 15/6/25.
    //  Copyright (c) 2015年 qianfeng. All rights reserved.
    //
    
    
    #import <Foundation/Foundation.h>
    #import "GDataXMLNode.h"
    //xml 由xml文档头(文档头 <? ?>包含) 文档的主体
    
    //1.添加libxml2.dylib库(系统库), 在bulid Phases中添加二进制库 (在link Binary With libraries 选项)
    //2.在bulid Setting中 添加头文件路径, search paths 下的 header search paths -->/usr/include/libxml2
    //3.添加GDataXMLNode库(第三方库) arc  mrc 混合编程 (在bulid Phases下 complie sources GDataXMLNode.m 文件)  -fno-objc-arc
    //
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
            
            NSData *xmlData =[NSData dataWithContentsOfFile:@"/Users/qianfeng/Desktop/text/text/untitled folder/内存管理/OC1-XML文件解析/en.lproj/users.xml"];
            //创建document对象
            GDataXMLDocument *document =[[GDataXMLDocument alloc] initWithData:xmlData options:0 error:nil];
            //获取文件的根节点
            //GDataXMLElement *rootElement =[GDataXMLElement elementWithName:@"Users"];//获取xml的一个节点.
            GDataXMLElement *rootElement =[document rootElement];//获取XML文件的根节点.
            
            NSArray *users =[rootElement elementsForName:@"User"];
            //NSLog(@"users=%@",users);
            
            //GDataXMLElement *user 节点 形式 存放在users数组中
            for (GDataXMLElement *user in users) {
                NSString *ID =[[user attributeForName:@"id"] stringValue];
                NSLog(@"id =%@",ID);
                
    //            <User id ="002">
    //            <name>Tang</name>
    //            <name>xiaohei</name>
    //            <age>23</age>
    //            </User>
                NSString *name =[[[user elementsForName:@"name"] firstObject] stringValue];
                NSLog(@"name = %@",name);
                
                NSString *age =[[[user elementsForName:@"age"] firstObject] stringValue];
                NSLog(@"age = %@",age);
    
            }
            
        }
        return 0;
    }
  • 相关阅读:
    针对上一篇文章中的代码,想出的重构方案(python实现)
    Android中的广播Broadcast详解
    Android中的Serialable和Parcelable的区别
    Java中的序列化Serialable高级详解
    Android中的Parcel机制(下)
    Android中的Parcel机制(上)
    Java中获取前一天和后一天时间
    Android中的Service详解
    Window 通过cmd查看端口占用、相应进程、杀死进程等的命令
    Java高新技术第三篇:注解的使用
  • 原文地址:https://www.cnblogs.com/0515offer/p/4599575.html
Copyright © 2020-2023  润新知