zoukankan      html  css  js  c++  java
  • XML、JSON数据结构解析

    一、XML的解析

    XML的解析分为SAX解析和DOM解析,DOM解析又分为根节点解析和叶子节点解析。

    1.SAX解析步骤

    a.获取XML数据存储的文件路径(假如XML文件为Students.xml)

        NSString *filePath = [[NSBundle mainBundle]pathForResource:@"Students" ofType:@"xml"];

     b.创建解析对象

        //创建二进制数据对象

        NSData *data = [NSData dataWithContentsOfFile:filePath];

        NSXMLParser *parser = [[NSXMLParser alloc]initWithData:data];

    c.设置代理人

       parser.delegate = self;

    d .开始解析

        [parser parse];

    e.释放所有权

        [parser release];

    2.需要实现NSXMLParserDelegate代理的方法

    //当开始解析的时候调用

    - (void)parserDidStartDocument:(NSXMLParser *)parser;

    //当结束解析的时候调用

    - (void)parserDidEndDocument:(NSXMLParser *)parser;

    //该方法单个读取到开始标签的时候调用

    - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {

        /*

         elementName:标签的名字

         namespaceURI:标签前缀的唯一标识(不经常使用)

         qName:标签的前缀

         attributeDict:存储标签属性的内容

         */

        }

    //该方法单个读取到结束标签的时候调用

    - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName ;

    //当读取到标签之间的数据的时候调用

    - (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string ;

  • 相关阅读:
    ViewPager+Fragmrnt最简单结合方法
    Microsoft SQL Server Version List(SQL Server 版本)
    hdu 2795 Billboard(线段树单点更新)
    面向对象程序设计的思想的长处
    iOS 友盟分享
    使用Broadcast实现android组件之间的通信
    jquery ui 分页插件 传入后台的连个參数名
    android adb常见问题的解决方法!
    UVa 11015
    优秀程序猿学习方法
  • 原文地址:https://www.cnblogs.com/zyqc/p/4725517.html
Copyright © 2011-2022 走看看