zoukankan      html  css  js  c++  java
  • NSData转成NSDictionary

    在进行网络数据通信的时 候,经常会遇到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
  • 相关阅读:
    shell:定时任务crontab
    shell:采集进程的cpu和内存利用率_随手记1
    临时记录
    python:numpy库和matplotlib库
    python:urllib:HTTPResponse对象的用法
    美国亚马逊图片打不开
    互联网协议
    range 和 xrange
    国内服务器的端口开放问题
    Mac上设置Chrome跨域
  • 原文地址:https://www.cnblogs.com/elliotta/p/2787410.html
Copyright © 2011-2022 走看看