IOS学习之解析数据(NSJSONSerialization)

上一篇讲了 我们获取过来的数据格式是JSON格式的

大家可以搜下对应JSON转换类就可以按照对应的内容进行数据转换了

我这边呢就提供一下我的转换方式

我目前搭建的项目用到的最多的就是UITableView

至于 怎么使用UITableView我之后会进行讲解的

 

我会在对应的.m文件中 定义 一个initListData方法.用来获取数据和解析数据 (还是直接贴代码吧)

复制代码
-(void) initListData
{
    
    GetWebInfo *getwebinfo=[GetWebInfo alloc];
    NSString *myparameters=[[NSString alloc] initWithString:[NSString stringWithFormat:@"Method=getInfo&rows=4&page=%d",_page]];
    getwebinfo.parameters=myparameters;
    NSString *webReturnMessage=[getwebinfo dogetWebInfo];
    NSData* jsonData=[webReturnMessage dataUsingEncoding:NSUTF8StringEncoding];
    NSArray *keys =   [NSJSONSerialization
                       JSONObjectWithData:jsonData
                       options:NSJSONReadingMutableContainers
                       error:nil];
    allcount=[[keys valueForKey:@"total"] integerValue];
    [self.list addObjectsFromArray:[keys valueForKey:@"rows"]];
}
复制代码

首先 先定义一个上一篇 新建的GetWebInfo类

然后  组合参数...然后就是 调用 获取数据方法获取

然后讲String类型的数据encoding一下(现在看看突然感觉这一步貌似有点重复了..因为dogetwebinfo方法里貌似获取过来的就是NSData类型的了..)

然后是讲NSDATA类型的数据转换成NSArray类型的数据

然后我们就可以直接使用 

[keys valueForKey:@"total"] 

的方式 读取数据了

 

这边使用的时候大家可能会碰到 value 也是JSON数组的情况 .

那么就可以 [[keys valueForKey:@"xxx"] valueForKey:@"xx"]这样的方式

或者是下面这种方式

[[_list objectAtIndex:[indexPath row]] valueForKey:@"title"]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值