博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在IOS中使用json
阅读量:6500 次
发布时间:2019-06-24

本文共 1511 字,大约阅读时间需要 5 分钟。

1、从https://github.com/stig/json-framework/中下载json框架:json-framework

2、解压下载的包,将class文件夹下的所有文件导入到当前工程下。

3、在使用的文件中加入导入语句 :#import "SBJson.h"

4、将json字符串转为NSDictionary对象。

       

Cpp代码  
  1. NSString *temp=@"{\"中国\":{  
  2.                           \"北京\":{\"北京1\":1,\"北京2\":2,\"北京3\":3},  
  3.                          \"上海\":{\"上海1\":4,\"上海2\":5,\"上海3\":6},  
  4.                          \"广州\":{\"广州1\":7,\"广州2\":8,\"广州3\":9}}}";  
  5. NSDictionary *items = [temp JSONValue];  
NSString *temp=@"{\"中国\":{                           \"北京\":{\"北京1\":1,\"北京2\":2,\"北京3\":3},                          \"上海\":{\"上海1\":4,\"上海2\":5,\"上海3\":6},                          \"广州\":{\"广州1\":7,\"广州2\":8,\"广州3\":9}}}"; NSDictionary *items = [temp JSONValue];

 5、递归遍历解析出的NSDictionary对象

 

Cpp代码  
  1. -(void)visitDict:(NSDictionary *)dict{  
  2.   NSArray *keys=[dict allKeys];  
  3.   for (NSString *key in keys) {  
  4.      NSString *result=[NSString stringWithFormat:@"key=%@,value=%@",key,[dict objectForKey:key]];  
  5.      NSLog(result);  
  6.      if([[dict objectForKey:key] isKindOfClass:[NSDictionary class]]){  
  7.             [self visitDict:[dict objectForKey:key]];  
  8.      }  
  9.    }  
  10. }  
-(void)visitDict:(NSDictionary *)dict{  NSArray *keys=[dict allKeys];  for (NSString *key in keys) {     NSString *result=[NSString stringWithFormat:@"key=%@,value=%@",key,[dict objectForKey:key]];     NSLog(result);     if([[dict objectForKey:key] isKindOfClass:[NSDictionary class]]){            [self visitDict:[dict objectForKey:key]];     }   }}

 6、将解析出的NSDictionary对象还原为json字符串

                

Cpp代码  
  1. NSString * jsonStr=[items JSONRepresentation];  
NSString * jsonStr=[items JSONRepresentation];

 

转载于:https://www.cnblogs.com/lovewx/p/4081219.html

你可能感兴趣的文章
Lua(Codea) 中 table.insert 越界错误原因分析
查看>>
ELK 5.x日志分析 (二) Elasticserach 5.2 安装
查看>>
sbt配置nexus仓库
查看>>
一次奇怪的AP注册异常问题处理
查看>>
TableStore: 海量结构化数据分层存储方案
查看>>
Unity 4.x游戏开发技巧集锦(内部资料)
查看>>
自适应网页设计
查看>>
获取BT节点信息bittorrent-discovery
查看>>
环形动画加载视图AnimatedCircleLoadingView
查看>>
Centos 7使用vsftpd搭建FTP服务器
查看>>
tcpdump抓包文件提取http附加资源
查看>>
linux下SVN不允许空白日志提交
查看>>
第2周第1课
查看>>
docker制作镜像篇(基于容器)
查看>>
山寨c 标准库中的getline 函数
查看>>
shell时间
查看>>
pfSense book之2.4安装指南
查看>>
org.springframework.data.redis 一次连接获取特定key所有k-v(pipeline)
查看>>
[译稿]同步复制提议 2010-09
查看>>
windows 自动化目录大纲(各企业架构不一样,按需选择)
查看>>