iOS基础 JSON格式

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
云解析DNS,个人版 1个月
简介: iOS基础 JSON格式

SON是一种轻量级的数据格式,一般用于数据交互。目前JSON的使用非常广泛,绝大多数网络请求都采用了JSON格式。JSON的格式很像Objective-C中的字典和数组,标准JSON格式key必须用双引号包裹起来。

{"name":"九九学院”","site":"www.99ios.com"}


要想从JSON中获取其中的详细数据,则需要对JSON进行解析,即将JSON转换为Objective-C中的数据类型。JSON数据格式与Objective-C对象之间的参照如z所示。


1684475709661.png


参照表


对于JSON数据的解析既可以使用Foundation框架中提供的方法,也可以使用第三方框架。其中苹果官方提供了原生的解析JSON数据的方法——NSJSONSerialization。NSJSONSerialization类中提供了JSON与Objective-C对象之间相互转换的方法。

JSON数据转Objective-C对象,使用的是JSONObjectWithData:options:error:error方法。

+ (nullable id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error;


Objective-C对象转JSON数据,使用的是dataWithJSONObject:options:error:方法。

+ (nullable NSData *)dataWithJSONObject:(id)obj options:(NSJSONWritingOptions)opt error:(NSError **)error;


另外,JSON的解析也可以使用第三方框架,常见的有JSONKit、SBJson等。需要特别说明的是,假如使用AFNeworking处理网络请求,该框架会自动解析JSON类型的网络响应数据。


JSON 和字符串之间的转换


有时候需要在JSON 和字符串之间进行相互转换,例如,在网络编程中,可以使用

字符串转JSON:

- (NSData*)dataUsingEncoding:(NSStringEncoding)encoding;


JSON转字符串:

-(id)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding;

NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
str = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@",str);


目录
相关文章
|
2月前
|
JSON 前端开发 Java
Json格式数据解析
Json格式数据解析
|
1月前
|
存储 JSON JavaScript
【chat-gpt问答记录】python将数据存为json格式和yaml格式
【chat-gpt问答记录】python将数据存为json格式和yaml格式
39 1
|
1月前
|
存储 JSON JavaScript
使用Python处理JSON格式数据
使用Python处理JSON格式数据
|
2月前
|
XML JSON 前端开发
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(简单支持发起人与审批人的流程)
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(简单支持发起人与审批人的流程)
154 2
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(简单支持发起人与审批人的流程)
|
2月前
|
XML JSON 前端开发
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(支持并行网关)
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(支持并行网关)
145 3
|
2月前
|
存储 Android开发 iOS开发
iOS不支持HEIC格式的图片显示和标签函数显示问题及解决方案
iOS不支持HEIC格式的图片显示和标签函数显示问题及解决方案
56 0
|
2月前
|
存储 Web App开发 Android开发
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
112 1
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
|
21天前
|
JSON 数据格式
Content type ‘text/plain;charset=UTF-8‘ not supported,这里要把测试文件转为json格式
Content type ‘text/plain;charset=UTF-8‘ not supported,这里要把测试文件转为json格式
|
24天前
|
JSON JavaScript 前端开发
一篇文章讲明白json文件格式详解
一篇文章讲明白json文件格式详解
18 0
|
27天前
|
XML JSON 开发框架
一篇文章讲明白JSON格式转换成XML格式
一篇文章讲明白JSON格式转换成XML格式
12 0