xml数据的解析

原创 2015年11月21日 20:14:10

首先创建一个xml文件

<data>
<person age = "15">ZhangSan</person>
<person age = "2">jikexueyuan</person>
<a>
<b>
    <c>
    </c>
</b>
</a>
</data>
将xml数据文件导入到文件列表中
随后再代码中 创建xml的解析对象 通知其代理 随后开始解析

import UIKit

class ViewController: UIViewController,NSXMLParserDelegate{

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    //创建xml的解析对象 
        var parser = NSXMLParser(contentsOfURL: NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("data", ofType: "xml")!))
    //通知代理
        parser?.delegate = self
        //开始解析
        parser?.parse()
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
//实现代理的方法 来解析数据
    var currentNodeName:String?
    func parser(parser: NSXMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String]) {
        //获得名字
        print(elementName)
        currentNodeName = elementName
        //获得属性
        if elementName == "person"{
            //为了以防有的对象没有age的属性 则要对其进行判断 有没有age的属性
         
            if  let  age = attributeDict["age"] {
            print("age:\(age)")
    }
    }
}
    //查找当前内容
    func parser(parser: NSXMLParser, foundCharacters string: String) {
        //避免空格符号的出现
        var str = string.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet())
        if str != "" {
            print("current Node : \(currentNodeName) value is \(str)")
        }
    }
    
}

查找到的信息如下所示


age:15

current Node : Optional("person") value is ZhangSan

person

age:2

current Node : Optional("person") value is jikexueyuan

a

b

c


data

person

age:15

current Node : Optional("person") value is ZhangSan

person

age:2

current Node : Optional("person") value is jikexueyuan

a

b

c




版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

xml数据解析

  • 2015年07月10日 11:29
  • 124KB
  • 下载

解析XML数据

  • 2014年11月22日 11:58
  • 1.19MB
  • 下载

手把手教你SOAP访问webservice并DOM解析返回的XML数据

前言: 目前我们项目组还在采用webservice这种http方式,并且某些网站服务提供的对外接口还在采用webservice方式,因此就总结了一下写了这篇文章。以soap1.2的请求为例,在例子里...

xml数据解析包

  • 2013年05月08日 15:36
  • 1.16MB
  • 下载

SQL 解析XML数据示例

  • 2017年05月12日 16:06
  • 1KB
  • 下载

Android中XML数据解析

转载请注明出处:http://blog.csdn.net/yegongheng/article/details/38296207 XML初步        今天我们来学习另一种非常重要的数...

XML解析数据

  • 2015年11月12日 14:30
  • 40KB
  • 下载

Json和xml的数据解析

  • 2016年08月10日 22:48
  • 36KB
  • 下载

接收POST数据,解析XML

package org.eclipsebook.ch09; import org.dom4j.Document; import org.dom4j.DocumentException; import...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:xml数据的解析
举报原因:
原因补充:

(最多只允许输入30个字)