zoukankan      html  css  js  c++  java
  • iPhone开发 解析xml NSData

    xml字符串为:

    <users>
    <user name="hoge" age="20" />
    <user name="fuga" age="30" />
    </users>

     

    //解析按钮事件

    -(IBAction)btnXml

    {

        

        NSString* str= [uitextview1 text];

        //string转成data

        NSData *xmlData = [str dataUsingEncoding: NSUTF8StringEncoding];

        //xml进行解析需要使用NSXMLParser类,首先声明一个NSXMLParser对象    

        //开始解析  

        NSXMLParser* xmlRead = [[NSXMLParser alloc] initWithData:xmlData];//初始化NSXMLParser对象   

        [xmlRead setDelegate:self];//设置NSXMLParser对象的解析方法代理  

        [xmlRead parse];//调用代理解析NSXMLParser对象,看解析是否成功      

    }

     

    //解析器,从两个结点之间读取内容

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

        //NSLog(@"%@",string);

    }

     

    //获得结点结尾的值

    - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName

      namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {

        //NSLog(@"%@",elementName);

    }

    //获得结点头的值

    - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName

      namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName

        attributes:(NSDictionary *)attributeDict 

    {

        //NSLog(@"%@",elementName);

        if([elementName isEqualToString: @"user"])

        {

            NSString* strName=[attributeDict valueForKey:@"name"];

            NSString* strAge=[attributeDict valueForKey:@"age"]; 

            NSString* strUser=uitextview2.text;

            strUser=[strUser stringByAppendingFormat:@"姓名:%@,年龄:%@\n",strName,strAge];

            [uitextview2 setText:strUser];

            //NSLog(@"姓名:%@,年龄:%@", strName,strAge);

        }

    }

  • 相关阅读:
    JSP动作元素你又知几多?
    一个简单的TCP/IP服务端客户端对话
    使用Graphics2D去除曲线锯齿状
    MySQL数据类型
    Eclipse常用快捷键
    C#中的委托和事件
    GitHub当道,菜鸟也为Git疯狂
    C++文件操作
    JSP指令你知多少?
    spring如何使用多个xml配置文件
  • 原文地址:https://www.cnblogs.com/zhwl/p/2392286.html
Copyright © 2011-2022 走看看