解决从服务器获取的数组是 __NSCFConstantString以及""没有空格字符串的问题
来源:互联网 发布:flash制作软件for mac 编辑:程序博客网 时间:2024/06/06 23:18
猫猫分享,必须精品
原创文章,欢迎转载。转载请注明:翟乃玉的博客
地址:http://blog.csdn.net/u013357243
问题
项目遇到了个bug,从服务器获取到的数据是这样的
{
status = 1,
data = [
{
uid = 161,
type = 2,
id = 79,
addtime = 1447642148,
addtime_txt = 2,
…
}]
}
看着挺抽象的,意思就是我们访问后返还的数据中有一个status, 一个data的放着一堆字典的数组,但是。。。但是就是但是,本来如果是下面数组里没有数据的情况下,status的值会是0,然而判断status == 0 或者是用字符串的isEqualToString方法都不行,反正就是不能行不能行的。
并且,当status = 0 的时候, 地下的data数组的值是”“这样的一个字符串。。。。。。。 是的,没有看错,他是个字符串,我通过isa 还有强制转换等得到他的类型是 __NSCFConstantString 哦尼玛卖糕的,这什么鬼。。。并且这里你要是用[data isEqualToString:@”“] 这样判断,当他是空的时候没事,但是如果有值了就崩了,血崩,反过来,如果用别的方法,比如看他存在否,当没有的时候 也就是他是”“这个鬼的时候也会蹦,很见鬼。
解决
经过亿万个草泥马略过,反正最后我是参考android客户端兄弟的做法,直接判断数组的长度,但是这里有时候他不是数组 是__NSCFConstantString这个鬼。。。(人家java的数组如果不是数组类型啥的都会用空啥的东西表示,oc这表咋竟然就知道给我崩。。。血崩)
NSArray *dataArr = Data[@"data"]; NSLog(@"dataArr.class = %@", dataArr.class); if ([dataArr isKindOfClass:[NSArray class]]) { for (NSDictionary * dic in dataArr) { attentionTerraceModel * model=[[attentionTerraceModel alloc] initWithDic:dic]; [_mary_data addObject:model]; } }else { UIAlertView *aleat=[[UIAlertView alloc] initWithTitle:@"提醒" message:@"暂无关注信息" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil]; [aleat show]; }
我是这样解决的,就是把它换成NSArray 然后看他到底是不是数组类型的,反正如果以后碰到类似的比如字典啊 字符串啊也可以试试,至于内部原理什么的猫猫猜测了一些,这里就不乱说了,有懂得希望能赐教下,不胜感激!
- 解决从服务器获取的数组是 __NSCFConstantString以及""没有空格字符串的问题
- 解决从服务器获取的数组是 __NSCFConstantString以及""没有空格字符串的问题
- istringstream的用法,解决字符串空格问题
- Eclipse下LogCat打印信息瞬间消失了,以及byte数组转字符串是出现多余的空格问题的解决方案(随手小笔记)
- caffeOnSpark遇到的问题,没有解决,Caffe.java是从哪儿出来的?请教下大家
- 从xml文件中获取相关数据,解决xml中部分数据没有结束的问题
- 字符串数组空格的替换
- 解决从服务器下载文件 的问题
- 【android】通过User-Agent,解决httppost从服务器上获取的数据不正确的问题
- 获取服务器json字符串的使用问题
- 解决mantis2.4.0 htmlentities只能是字符串但是传入一个数组的问题
- C语言中是没有字符串数组的,用C语言实现字符串数组
- 字符串有空格的问题
- 字符串的替换空格问题
- 关于String字符串空格的处理[用(char)12288解决空格问题]
- 没有解决的问题
- 没有解决的问题。
- string字符串遇到的问题 以及字符串为空或空格问题
- 数据引擎-阿里的ODPS大规模计算引擎
- 二叉树的链式存储及基本运算
- 第十周项目3 利用二叉树遍历思想解决问题(3)
- 第十二周项目2-操作用邻接表存储的图
- 第十一周项目1-验证算法(3)中序线索化二叉树的算法验证
- 解决从服务器获取的数组是 __NSCFConstantString以及""没有空格字符串的问题
- Socket 与 Android Socket AIO 库 Naga 的介绍
- 困难的串(Krypton Factor,UVa 129)
- 第十二周 项目三(1) 图遍历算法实现
- iOS本地化
- 数据库设计过程遇到的零散点记录powerdesigner 数据库设计 表设计
- php中关于json的使用
- SQL中replace()函数的用法
- HDU 1811 Rank of Tetris (并查集+拓扑排序)