iOS中解析 XML / JSON
JSON数据格式
1. 概述:
JSON (JavaScript Object Notation) 是⼀一种轻量级的数据交换格式
基于⽂文本格式,易于⼈人阅读和编写,同时也易于机器解析和⽣生成。
2. JSON 数据的书写格式是:名称/值 • 名称写在前⾯面(在双引号中)
• 值对写在后⾯面
• 中间⽤用冒号隔开
3. JSON 值⽀支持类型
数字(整数或浮点数)
字符串(在双引号中)
逻辑值(true 或 false)
数组(在中括号中)
对象(在花括号中)
null
JSON格式⼀一:最外层是⼤大括号
在线JSON格式化⼯工具
http://json.phpddt.com
URL:
http://api.openweathermap.org/data/2.5/weather?
q=beijing&units=metric
JSON格式⼆二:最外层是中括号
1. JSON值⽀支持类型和OC对象的对应关系
数字 —> NSNumber
双引号 —> NSString
中括号 —> NSArray
⼤大括号 —> NSDictionary
null —> NSNull
2. 对象转模型: 将解析后的OC对象(NSArray/NSDictionary)转换成⾃自定义的模型类
XML数据格式
1. XML (eXtensible Markup Language) 可扩展标记语⾔言,
• 是⼀一种⽤用于标记电⼦子⽂文件使其具有结构性的标记语⾔言
• XML 是各种应⽤用程序之间进⾏行数据传输的常⽤用的语⾔言之⼀一。
2. XML⽂文档的三个术语:
根元素: 最外层的元素
元素(Element): 从开始标签直到结束标签的部分
属性(Attribute): 提供元素的额外信息
1. XML样例⼀一:
2. XML样例⼆二:
1. XML解析⽅方式:
DOM: ⼀一次性将整个xml⽂文档加载进内存,通过xml⽂文档内的元素结构,解析出元素对
应的值/属性
SAX: 从xml⽂文档的根元素开始,按元素的先后顺序依次解析
2. iOS中解析XML⽂文档类/库
GDataXML: DOM⽅方式解析,由Google开发,基于libxml2
NSXMLParser: SAX⽅方式解析,使⽤用相对简单
3. 样例:使⽤用GDataXML解析xml⽂文档
• 配置:a. GDataXML/⽂文件夹导⼊入xcode⼯工程中
b. Build Setting中的”Header Search Paths”添加 /usr/include/libxml2
c. Build Setting中的”Other Linker Flags”添加 -lxml2
iOS中解析 XML / JSON的更多相关文章
- iOS 中的 xml 解析
在ios 中解析xml 的方法有很多种 1.苹果原生 NSXMLParser:SAX方式解析,使用简单 2.第三方框架 libxml2:纯c语言,默认包含在ios sdk中,同时支持DOM 和 SA ...
- 用 ElementTree 在 Python 中解析 XML
用 ElementTree 在 Python 中解析 XML 原文: http://eli.thegreenplace.net/2012/03/15/processing-xml-in-python- ...
- [置顶] Android学习系列-Android中解析xml(7)
Android学习系列-Android中解析xml(7) 一,概述 1,一个是DOM,它是生成一个树,有了树以后你搜索.查找都可以做. 2,另一种是基于流的,就是解析器从头到尾解析一遍xml文件. ...
- Delphi中解析Xml的控件-SimDesign NativeXml
Delphi中解析Xml的控件-SimDesign NativeXml 正在学习,感觉应用很方便.无源代码的版本还是免费的. SimDesign.NativeXml是一个delphi和bcb的XML控 ...
- Android中解析XML格式数据的方法
XML介绍:Extensible Markup Language,即可扩展标记语言 一.概述 Android中解析XML格式数据大致有三种方法: SAX DOM PULL 二.详解 2.1 SAX S ...
- 在ios中解析json数据
刚刚下午那会 弄了个 解析 xml demo的小例子,本想着json也挺复杂 弄还是 不弄,但是简单的看了下 发现挺简单 考虑了很久,还是写上来吧,毕竟json用得太多了,而且算是自己的积累吧,毕竟 ...
- iOS中解析json多种方法
我感觉JSON解析,重要的是JSON解析之后对结果的处理JSON解析后是个dictionary,但是字典中有可能包含字典和数组,数组中还可以包含字典.向客户端请求的返回数据解析下面就简单介绍一下JSO ...
- iOS边练边学--iOS中的XML数据解析
XML的解析方式 SAX 大小文件都可以 NSXMLParser DOM 最好是小文件 GDataXML NSXMLParser的用法 创建解析器来解析 // 创建XML解析器 NSXMLParser ...
- spring中解析xml
解析xml有SAX,Stax,dom等方式,那么spring中是如何解析xml文件的呢? Document doc = this.documentLoader.loadDocument( inputS ...
随机推荐
- (推荐)jquery.pagination.js分页
序言 本来想自己对这个分页使用做一些总结的,但发现大神们已经总结的很好了.所以给推荐一下. 转自:http://www.cnblogs.com/knowledgesea/archive/2013/01 ...
- 转:微博"收藏/赞/转发"技术资料汇总
书籍 HTTP权威指南 <- @Fenng Introduction to Information Retrieval <- @陈利人 Lua 源码欣赏 <- @简悦云风 The A ...
- 转: 如何用linux命令修改linux主机ip网关子网掩码
linux一般使用ifconfig命令修改linux主机的ip.网关或子网掩码. 1.命令格式: ifconfig [网络设备] [参数] 2.命令功能: ifconfig 命令用来查看和配置网络设备 ...
- Qt自定义事件的实现(军队真正干活,但要增加监军,大平台通知事件,事件内容自定义)
初学Qt,用了Qt自带的事件,然后想怎么才能定义自己的事件呢?又如何使用自定义事件呢?看了篇文章,说先要子类化QEvent,然后定义自己的QEvent::Type,然后重写QWidget::event ...
- Walls POJ 1161
参考了大牛的博客 http://blog.csdn.net/wangjian8006/article/details/7958838 题目大意: 给出n个点,在这些点中有些点是俱乐部点,并且有m个区域 ...
- (转载)细说PHP中strlen和mb_strlen的区别
(转载)http://developer.51cto.com/art/201105/263103.htm 在PHP中,strlen与mb_strlen是求字符串长度的函数,但是对于一些初学者来说,如果 ...
- HDOJ 1287 破译密码(异或运算)
Problem Description 有个叫"猪头帮"的国家,采用一种简单的文法加密,他们所用的语言里面只有大写字母,没有其他任何字符:现在还知道他们加密的方法是:只用一个大写字 ...
- Android 迷之Version管理
很多时候会搞混Android中的几个Version minSdkVersion:指你所开发的应用程序能够兼容的最低系统.比如,你现在开发一款暴风.APK,你希望它能在Android已经发布的所有版本的 ...
- android的intent打开系统程序
打开设置主界面 Intent intent = new Intent(Android.provider.Settings.ACTION_SETTINGS); //系统设置 startActivityF ...
- 关于Hibemate
1.Hibernate定位 HIbernate是一款实现了ORM思想的框架 JDO TOpLink 2.HIbernate初次解释 Hibernate:冬眠,蛰伏 和持久化有关系 将内存中data持久 ...