您的位置:首页 > Web前端 > JavaScript

runtime解析json数据

2016-06-20 14:14 405 查看
runtime是一套比较底层的纯C语言API, 属于1个C语言库, 包含了很多底层的C语言API。 在我们平时编写的OC代码中, 程序运行过程时,
其实最终都是转成了runtime的C语言代码, runtime算是OC的幕后工作者。

下面简单介绍一下runtime使用场景之一  -----  json数据解析

思路其实非常简单:

1.要先清楚服务端字段名字,然后将自己的类里面字段的名字与其相同

2.使用class_copyPropertyList
函数获取当前类的所有字段

3.根据字段名取出对应的值,然后赋值即可

代码:

unsigned
int count;

        objc_property_t *property_t_array =
class_copyPropertyList([NSObject
class], &count);

        for(int i =0;i < count; i++){

            objc_property_t pro_t = property_t_array[i];

            const
char *pro_name = property_getName(pro_t);

            NSString *key = [NSStringstringWithUTF8String:pro_name];

            id value = [dic
valueForKey:key];

            [self
setValue:value forKey:key];

        }

        free(property_t_array);

是不是很简单的,其实就是当类的属性非常多的时候,不再需要一个一个的解析赋值,少了很多代码而已。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息