iOS学习(OC语言)知识点整理

一、JSON数据格式

1)概念:json是一种网络数据传输格式,有值/对象:{“A”:1,”B”:”2”…}词典;对象的序列:[,,,,,]数组两种数据类型

2)URLWithString 将字符串网址封装成NSURL对象 例如:

 NSString *urlStr=@"http://10.0.8.8/sns/my/user_list.php?number=20
&page=";//get post
NSURL *url=[NSURL URLWithString:urlStr];

3)fileURLWithPath 将本地文件地址封装成NSURL的对象 例如:

 url=[NSURL fileURLWithPath:@“Users/kingkong/JsonFile/test.json”];

4)initWithContentsOfURL 用于同步请求网络上的json数据  例如:

 NSData *json=[[NSData alloc]initWithContentsOfURL:url];

5)initWithData 将JSON数据解析成字符串  例如:

 NSString *strjson=[[NSString alloc]initWithData:json encoding:NSUTF8StringEncoding];
NSLog(@"%@",strjson);

6)options:NSJSONReadingAllowFragments 可直接将json数据解析为字典对象 例如:

 //读取文件内容(json格式的数据)
NSData *jsonData=[[NSData alloc]initWithContentsOfFile:path];
//直接将json数据解析为字典对象
NSDictionary *dict1=[NSJSONSerialization JSONObjectWithData:jsonData options:
NSJSONReadingAllowFragments error:nil];

7)获取网络图片数据并保存到本地(类似下载)实例代码

 //获取服务器上的资源(图片数据)
NSData *iconData=[NSData dataWithContentsOfURL:[NSURL URLWithString:iconUrl]];
NSString *iconFile=[fullPath stringByAppendingPathComponent:@"icon.png"];
//将图片数据写入文件(保存图片到文件中)
[iconData writeToFile:iconFile atomically:YES];

8)获取JSON数据并遍历数据实例代码:

 //请求的网络路径
NSString *path=@"http://10.0.8.8/sns/my/user_list.php?number=20&page=";
//构造URL
NSURL *url =[NSURL URLWithString:path];
//请求获取JSON数据
NSData *json=[[NSData alloc]initWithContentsOfURL:url];
//将JSON数据解析成对象
id obj=[NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableContainers error:nil];
//遍历JSON数据
if ([obj isKindOfClass:[NSDictionary class]]) {
NSDictionary *dict=(NSDictionary *)obj;
NSArray *array=[dict objectForKey:@"users"];
for (NSDictionary *dic in array) {
NSLog(@"username:%@\tuid:%@",[dic objectForKey:@"username"],[dic objectForKey:@"uid"]);
}
}

9)将字典集合编码成JSON数据 实例代码

  //构造字典数据
NSArray *arry=@[@"pass1234",@"" ];
NSDictionary *dic=[[NSDictionary alloc]initWithObjectsAndKeys:@"KingKong",@"username" ,@"男",@"sex",arry,@"password",nil];
//将字典集合数据转换为JSON数据类型
NSData *json=[NSJSONSerialization dataWithJSONObject:dic options:NSJSONWritingPrettyPrinted error:nil];
//重新解析JSON数据
NSString *strjson=[[NSString alloc]initWithData:json encoding:NSUTF8StringEncoding];
NSLog(@"%@",strjson);

10)JSON解析工具Jason.app 【下载

11)NSDate OC中的日期函数操作【详情

最新文章

  1. ubuntu15.04 nginx1.6.5 配置虚拟主机
  2. C# 导入EXCEL 报错外部表不是预期的格式错误 .
  3. 三. 动态添加option选项
  4. 初学Linux
  5. MongoDB的基本使用
  6. Java中List转数组,必须带个参数
  7. [转载]如何申请淘宝app_key、app_secret、SessionKey?
  8. Web项目的三层架构和MVC架构异同
  9. CCS5 建立SYS/BIOS工程时报错“cannot find file "./configPkg/linker.cmd" bios”的解决方法
  10. java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
  11. dba_dependencies查询结果视图
  12. float是什么样式?
  13. 无忧代理免费ip爬取(端口js加密)
  14. 使用Windows Service Wrapper快速创建一个Windows Service 如nginx
  15. js事件的绑定与移除
  16. MySQL事务(学习笔记)
  17. Atitit 创业好处 Atitit 为什么我们要创业
  18. 更改angular的默认端口
  19. Windows下memcache的配置和使用(python)
  20. 细解javascript中的this关键字

热门文章

  1. 2、CC2541芯片中级教程-OSAL操作系统(进一步了解-OLED && 普通按键和5方向按键-中断!!!)这个系统驱动层和应用层不一样~
  2. [ACM_动态规划] Alignment (将军排队)
  3. 据说每个大牛、小牛都应该有自己的库——Event处理
  4. asp.net mvc跨域filter
  5. ASP.NET将原始图片按照指定尺寸等比例缩放显示图片
  6. Java基础之泛型
  7. P,NP,NP_hard,NP_complete问题定义
  8. PHPer书单
  9. 03- Shell脚本学习--字符串和数组
  10. Tomcat源码阅读(二)初始化