//
// ViewController.swift
// ParseXML
//
// Created by 200ok on 15/4/13.
// Copyright (c) 2015年 200ok. All rights reserved.
//
import UIKit
class ViewController: UIViewController,NSXMLParserDelegate {
overridefunc viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
var parser=NSXMLParser(contentsOfURL:NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("data", ofType: "xml")!))
//传入xml格式的文件
parser?.delegate=self
parser?.parse()//开始解析
}
var currentNodeNumber:String!
func parser(parser:NSXMLParser!, didStartElement elementName:String!, namespaceURI: String!, qualifiedName qName:String!, attributes attributeDict: [NSObject :AnyObject]!) {
// println(elementName)输出元素(节点)名
currentNodeNumber=elementName
if elementName=="person"//只要节点是person
{
iflet age: AnyObject=attributeDict["age"]{
// println("age:\(age)")输出了属性age的值
}
}
}//解析属性
func parser(parser:NSXMLParser!, foundCharacters string:String!) {
var str=string.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet())
if str!= ""{
println("节点是\(currentNodeNumber),值是\(str)")
}
}//输出了每个节点的值
overridefunc didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}