博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[iOS] How-to:NSData转成NSDictionary
阅读量:6039 次
发布时间:2019-06-20

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

在进行网络数据通信的时候,经常会遇到NSData类型的数据。在该数据是dictionary结构的情况下,系统没有提供现成的转换成NSDictionary的方法,为此可以通过Category对NSDictionary进行扩展,以支持从NSData到NSDictionary的转换。声明和实现如下:

@interface NSDictionary (Helpers)
+ (NSDictionary *)dictionaryWithContentsOfData:(NSData *)data;
@end
@implementation NSDictionary (Helpers)
+ (NSDictionary *)dictionaryWithContentsOfData:(NSData *)data {
    CFPropertyListRef plist =  CFPropertyListCreateFromXMLData(kCFAllocatorDefault, (CFDataRef)data,
                                                               kCFPropertyListImmutable,
                                                               NULL);
    if(plist == nil) return nil;
    if ([(id)plist isKindOfClass:[NSDictionary class]]) {
        return [(NSDictionary *)plist autorelease];
    }
    else {
        CFRelease(plist);
        return nil;
    }
}
@end

转载地址:http://ggrhx.baihongyu.com/

你可能感兴趣的文章
第一个web项目
查看>>
程序员职业生涯探讨(转)
查看>>
移动应用跨平台之旅
查看>>
poj 1426 Find The Multiple(bfs)
查看>>
zabbix部署
查看>>
Redis持久化及复制
查看>>
Selenium基础知识(详解IDE命令、css及xpath定位一)
查看>>
Java Web整合开发(82)
查看>>
Scrum 简介
查看>>
Windows批处理 调用程序后 不等待子进程 父进程继续执行命令
查看>>
[BZOJ 4551][Tjoi2016&Heoi2016]树(并查集)
查看>>
smartcar.urdf.xacro
查看>>
C#设计模式学习笔记-单例模式
查看>>
BaseActivity
查看>>
django 使用mysql数据库的流程
查看>>
Java基础之String类
查看>>
数据库--释放mysql数据库资源
查看>>
jQueryUI Repeater 无刷新删除 新建 更新数据 - JQueryElement [7]
查看>>
FOJ有奖月赛-2015年11月 Problem A
查看>>
电商网站中添加商品到购物车功能模块2017.12.8
查看>>