Swift学习笔记(2)网络数据交换格式(XML,JSON)解析 [iOS实战 入门与提高卷]

本文档介绍了在Swift中如何使用NSXMLParser和TBXML解析XML文档,以及利用NSJSONSerialization解析JSON数据。详细讲解了各个框架的使用步骤和运行结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Swift学习笔记(2)网络数据交换格式(XML,JSON)解析

参考书籍及资源:iOS实战 入门与提高卷 关东升 参考书籍地址

  • 用NSXML来解析XML文档
  • 用TBXML来解析XML文档
  • 用NSJSONSerialization来解析JSON文档

目录


用NSXML来解析XML文档

NSXML是iOS SDK自带的,也是苹果默认的解析框架,框架的核心是NSXMLParser和它的委托协议NSXMLParserDelegate。

示例文档Notes.xml

<?xml version="1.0" encoding="UTF-8"?>
<Notes>
  <Note id="1">
    <CDate>2014-12-21</CDate>
    <Content>早上8点钟到公司</Content>
    <UserID>tony</UserID>
  </Note>
  <Note id="2">
    <CDate>2014-12-22</CDate>
    <Content>发布iOSBook1</Content>
    <UserID>tony</UserID>
  </Note>
  <Note id="3">
    <CDate>2014-12-23</CDate>
    <Content>发布iOSBook2</Content>
    <UserID>tony</UserID>
  </Note>
  <Note id="4">
    <CDate>2014-12-24</CDate>
    <Content>发布iOSBook3</Content>
    <UserID>tony</UserID>
  </Note>
  <Note id="5">
    <CDate>2014-12-25</CDate>
    <Content>发布2016奥运会应用iPhone版本</Content>
    <UserID>tony</UserID>
  </Note>
  <Note id="6">
    <CDate>2014-12-26</CDate>
    <Content>发布2016奥运会应用iPad版本</Content>
    <UserID>tony</UserID>
  </Note>
</Notes>

创建XMLParser类

import Foundation

class XMLParser: NSObject , NSXMLParserDelegate {

    private var notes:NSMutableArray! = []
    private var currentTagName:String!

    func startParse(){
        NSLog("start parse")

        let path=NSBundle.mainBundle().pathForResource("Notes", ofType: "xml")!
        let url=NSURL(fileURLWithPath: path)

        //开始解析
        let parser=NSXMLParser(contentsOfURL: url)!
        parser.delegate=self
        parser.parse()
    }

    //文档开始时触发
    func parserDidStartDocument(parser: NSXMLParser) {
        self.notes=NSMutableArray
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值