swift 实现xml解析

2021-12-10  本文已影响0人  我会回来的

1   准备xml数据

代码:

//---------------------------------------------------------------

<?xml version="1.0" encoding="utf-8" ?>

<students>

  <student id="001">

      <name>Bill Gates</name>

      <age>15</age>

  </student>

  <student id="002">

      <name>Tim Cook</name>

      <age>18</age>

  </student>

</students>

命名: data.xml

//------------------------------------------------------------------

2.  解析XML 

代码如下:

class ViewController: UIViewController,NSXMLParserDelegate{

    var currentNodeName:String!

    override func viewDidLoad() {

        super.viewDidLoad()

        let parser = NSXMLParser(contentsOfURL:NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("data", ofType:"xml")!))

        //1

        parser!.delegate=self

        parser!.parse()

    }

func parser(parser: NSXMLParser,didStartElementelementName:String,namespaceURI:String?,qualifiedNameqName:String?,attributesattributeDict: [String:String]) {

        currentNodeName= elementName

        ifelementName =="student"{

            ifletid = attributeDict["id"]{

            print("id:\(id)")

            }

        }

    }

    func parser(parser: NSXMLParser,foundCharactersstring:String) {

     let str =  string.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet())

//   打印出数据

       print("\(string):\(str)")

    }

    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

        // Dispose of any resources that can be recreated.

    }

}

上一篇 下一篇

猜你喜欢

热点阅读