【转】NSJSONSerialization解析JSON数据

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

JSON->NSData

复制代码

 1 - (IBAction)touchWriteButton:(id)sender {
2 NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init];
3 [dictionary setValue:@"Anthony" forKey:@"First Name"];
4 [dictionary setValue:@"Robbins" forKey:@"Last Name"];
5 [dictionary setValue:[NSNumber numberWithUnsignedInteger:51] forKey:@"Age"];
6 NSArray *arrayOfAnthonysChildren = [[NSArray alloc] initWithObjects:@"Anthony's Son 1", @"Anthony's Daughter 1", @"Anthony's Son 2", @"Anthony's Son 3", @"Anthony's Daughter 2", nil];
7 [dictionary setValue:arrayOfAnthonysChildren forKey:@"children"];
8 NSError *error = nil;
9 NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dictionary options:NSJSONWritingPrettyPrinted error:&error];
10 if (error) {
11 NSLog(@"dic->%@",error);
12 }
13 [dictionary release];
14 BOOL succeed = [jsonData writeToFile:JSON_PATH atomically:YES];
15 if (succeed) {
16 NSLog(@"Save succeed");
17 }else {
18 NSLog(@"Save fail");
19 }
20 }
 
NSData->JSON
 1 - (IBAction)touchReadButton:(id)sender { 
2 NSData *jsonData = [[NSData alloc] initWithContentsOfFile:JSON_PATH]; /* Now try to deserialize the JSON object into a dictionary */
3 NSError *error = nil;
4 id jsonObject = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingAllowFragments error:&error];
5 if (jsonObject != nil && error == nil){
6 NSLog(@"Successfully deserialized...");
7 if ([jsonObject isKindOfClass:[NSDictionary class]]){
8 NSDictionary *deserializedDictionary = (NSDictionary *)jsonObject;
9 NSLog(@"Dersialized JSON Dictionary = %@", deserializedDictionary);
10 } else if ([jsonObject isKindOfClass:[NSArray class]]){
11 NSArray *deserializedArray = (NSArray *)jsonObject;
12 NSLog(@"Dersialized JSON Array = %@", deserializedArray);
13 } else {
14 NSLog(@"An error happened while deserializing the JSON data.");
15 }
16 }
17 [jsonData release];
18 }

 本文转自编程小翁博客园博客,原文链接:http://www.cnblogs.com/wengzilin/archive/2012/07/17/2595683.html,如需转载请自行联系原作者

相关文章
|
9天前
|
数据采集 JSON 测试技术
如何在Python中高效实现CSV到JSON的数据转换
在实际项目中,数据格式转换是常见问题,尤其从CSV到JSON的转换。本文深入探讨了多种转换方法,涵盖Python基础实现、数据预处理、错误处理、性能优化及调试验证技巧。通过分块处理、并行处理等手段提升大文件转换效率,并介绍如何封装为命令行工具或Web API,实现自动化批量处理。关键点包括基础实现、数据清洗、异常捕获、性能优化和单元测试,确保转换流程稳定高效。
126 83
|
1月前
|
存储 搜索推荐 大数据
数据大爆炸:解析大数据的起源及其对未来的启示
数据大爆炸:解析大数据的起源及其对未来的启示
109 15
数据大爆炸:解析大数据的起源及其对未来的启示
|
17天前
|
数据采集 前端开发 API
SurfGen爬虫:解析HTML与提取关键数据
SurfGen爬虫:解析HTML与提取关键数据
|
22天前
|
数据采集 监控 搜索推荐
深度解析淘宝商品详情API接口:解锁电商数据新维度,驱动业务增长
淘宝商品详情API接口,是淘宝开放平台为第三方开发者提供的一套用于获取淘宝、天猫等电商平台商品详细信息的应用程序接口。该接口涵盖了商品的基本信息(如标题、价格、图片)、属性参数、库存状况、销量评价、物流信息等,是电商企业实现商品管理、市场分析、营销策略制定等功能的得力助手。
|
1天前
|
存储 数据采集 JSON
Python爬取某云热歌榜:解析动态加载的歌曲数据
Python爬取某云热歌榜:解析动态加载的歌曲数据
|
1天前
|
JSON JavaScript 前端开发
处理从API返回的JSON数据时返回Unicode编码字符串怎么处理
在处理API返回的JSON数据时,遇到类似`\u7f51\u7edc\u8fde\u63a5\u9519\u8bef`的Unicode编码字符串,可使用JavaScript内置方法转换为可读文字。主要方法包括:1. 使用`JSON.parse`自动解析;2. 使用`decodeURIComponent`和`escape`组合解码;3. 在API调用中直接处理响应数据。这些方法能有效处理多语言内容,确保正确显示非ASCII字符。
|
6天前
|
JSON API 数据格式
淘宝商品评论数据API接口详解及JSON示例返回
淘宝商品评论数据API接口是淘宝开放平台提供的一项服务,旨在帮助开发者通过编程方式获取淘宝商品的评论数据。这些数据包括评论内容、评论时间、评论者信息、评分等,对于电商分析、用户行为研究、竞品分析等领域都具有极高的价值。
|
8天前
|
Java API 数据处理
深潜数据海洋:Java文件读写全面解析与实战指南
通过本文的详细解析与实战示例,您可以系统地掌握Java中各种文件读写操作,从基本的读写到高效的NIO操作,再到文件复制、移动和删除。希望这些内容能够帮助您在实际项目中处理文件数据,提高开发效率和代码质量。
16 0
|
1月前
|
JSON 小程序 UED
微信小程序 app.json 配置文件解析与应用
本文介绍了微信小程序中 `app.json` 配置文件的详细
186 12
|
1月前
|
JSON 缓存 API
解析电商商品详情API接口系列,json数据示例参考
电商商品详情API接口是电商平台的重要组成部分,提供了商品的详细信息,支持用户进行商品浏览和购买决策。通过合理的API设计和优化,可以提升系统性能和用户体验。希望本文的解析和示例能够为开发者提供参考,帮助构建高效、可靠的电商系统。
49 12

推荐镜像

更多