解析json成dic对象

  • -(void)fetchedData:(NSData*)responseData {//parse out the json dataNSError* error;
  • NSDictionary* json =[NSJSONSerialization
  • JSONObjectWithData:responseData //1
  • options:kNilOptions
  • error:&error];
  • NSArray* latestLoans =[json objectForKey:@"loans"]; //2
  • NSLog(@"loans: %@", latestLoans); //3
  • }
  • 把对象生成json string
  • //build an info object and convert to json
  • NSDictionary* info =[NSDictionary dictionaryWithObjectsAndKeys:[loan objectForKey:@"name"],
  • @"who",
  • [(NSDictionary*)[loan objectForKey:@"location"]
  • objectForKey:@"country"],
  • @"where",
  • [NSNumber numberWithFloat: outstandingAmount],
  • @"what",
  • nil];
  • //convert object to data
  • NSData* jsonData =[NSJSONSerialization dataWithJSONObject:info
  • options:NSJSONWritingPrettyPrinted error:&error];
  • //print out the data contents
  • jsonSummary.text =[[NSString alloc] initWithData:jsonData
  • encoding:NSUTF8StringEncoding];
  • 添加json方法至dic
  • @interfaceNSDictionary(JSONCategories)
  • +(NSDictionary*)dictionaryWithContentsOfJSONURLString:(NSString*)urlAddress;
  • -(NSData*)toJSON;
  • @end
  • @implementationNSDictionary(JSONCategories)
  • +(NSDictionary*)dictionaryWithContentsOfJSONURLString:(NSString*)urlAddress{
  • NSData* data =[NSData dataWithContentsOfURL:[NSURL URLWithString: urlAddress]];
  • __autoreleasing NSError* error =nil;
  • id result =[NSJSONSerialization JSONObjectWithData:data
  • options:kNilOptions error:&error];
  • if(error !=nil)returnnil;
  • return result;
  • }
  • -(NSData*)toJSON{
  • NSError* error =nil;
  • id result =[NSJSONSerialization dataWithJSONObject:self
  • options:kNilOptions error:&error];
  • if(error !=nil)returnnil;
  • return result;
  • }@end
  • 使用列子
  • NSDictionary* myInfo =[NSDictionary dictionaryWithContentsOfJSONURLString:@"http://www.yahoo.com/news.json"];
  • NSDictionary* information =[NSDictionary dictionaryWithObjectsAndKeys:@"orange",@"apple",@"banana",@"fig",nil];
  • NSData* json =[information toJSON];
  • 判断是否可json化
  • BOOL isTurnableToJSON =[NSJSONSerialization isValidJSONObject: object]

iOS JSON解析的更多相关文章

  1. iOS json 解析遇到error: Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn’t be completed.

    Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn’t be completed. (Cocoa error 38 ...

  2. iOS json解析的几种方法 NSJSONSerialization,JSONKit,SBJson ,TouchJson

    相关的第三方类库大家可以去github上下载 1.NSJSONSerialization 具体代码如下 : - (void)viewDidLoad { [super viewDidLoad]; NSD ...

  3. iOS - Json解析精度丢失处理(NSString, Double, Float)

    开发中处理处理价格金额问题, 后台经常返回float类型, 打印或转成NSString都会有精度丢失问题, 因此使用系统自带的NSDecimalNumber做处理, 能解决这问题:经过测试其实系统NS ...

  4. iOS json解析中包含“\n”等解析出错

    文题算是解决了,把特殊字符替换一下:-(NSString *)JSONString:(NSString *)aString {    NSMutableString *s = [NSMutableSt ...

  5. iOS - JSON 数据解析

     iOS - JSON 数据解析 前言 NS_CLASS_AVAILABLE(10_7, 5_0) @interface NSJSONSerialization : NSObject @availab ...

  6. ios基础篇(二十七)—— Json解析

    一.什么是Json JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使 ...

  7. ios的网络数据下载和json解析

    ios的网络数据下载和json解析 简介 在本文中,笔者将要给大家介绍如何使用nsurlconnection 从网上下载数据,以及解析json数据格式,以及如何显示数据和图片的异步下载显示. 涉及的知 ...

  8. IOS中Json解析的四种方法

    作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSON格式化校验 ...

  9. IOS数据解析JSON

    //非原创 作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSO ...

随机推荐

  1. Bash中的位置参数和特殊参数

    #Bash中的位置参数和特殊参数 #Bash中的位置参数是由0以外的一个或多个数字表示的参数.#位置参数是当Shell或Shell函数被引用时由Shell或Shell函数的参数赋值,并且可以使用Bas ...

  2. ReactNative学习-滑动查看图片第三方组件react-native-swiper

    滑动查看图片第三方组件:react-native-swiper,现在的版本为:1.4.3,该版本还不支持Android. 下面介绍的是该组件的一些用法,可能总结的不完整,希望大家一起来共同完善. 官方 ...

  3. 转: 视频相关的协议族介绍(rtsp, hls, rtmp)

    转自: http://www.zhihu.com/question/20621558   作者:杨华链接:http://www.zhihu.com/question/20621558/answer/1 ...

  4. 地图 ajax-数据库

    通过数据库和ajax方法写出地图 客户端部分:html.js.css代码部分: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transit ...

  5. asp动态生成google的sitemap地图的代码

    本来使用那些网站生成google网站地图,时间久了,感觉太麻烦了:先打开他们的网站,输入我的网址,然后点击生成,等待一段时间后,下载生成后的文件,再将它通过ftp上传到空间上了.实在太麻烦了,还不如自 ...

  6. 用viewpager实现图片轮播

    应用中常常遇到图片轮播的需求,这时候就需要用到viewpager这个组件.viewpager是android support v4 中提供的一个组件.viewpager使用需要以下几步骤: 1.在布局 ...

  7. OC1-XML文件解析

    <?xml version = "1.0" encoding="utf-8"?> <Users> <User id="0 ...

  8. GForms开发平台

    1. 开发平台概述 1.1. 产品概述 GForms开发平台让开发人员甚至非技术人员在短短几分钟内创建全功能的展现服务,让开发团队更加适应客户和市场的需求,从而提高客户服务和速度实现收益. GForm ...

  9. 20140215-搭建phonegap开发环境

    1.安装jdk,配置环境变量 a)设置 JAVA_HOME =E:\SetUpFiles\win8.1\Java\jdk1.6.0_45 b)设置PATH=E:\SetUpFiles\win8.1\J ...

  10. 你应该知道的9个优秀的CSS框架

    前端开发是一项非常繁琐的工作,你不仅需要拥有和别人不一样的审美观和设计观,而且需要了解诸如HTML.CSS.JavaScript等错综复杂的技术,因此选择一些优秀的CSS框架或许可以帮助你大大提高工作 ...