OC-NSData详解

NSData用于保存字节数组。
初始化

 

- (instancetype)initWithBytesNoCopy:(void *)bytes length:(NSUInteger)length freeWhenDone:(BOOL)b;

初始化对象。
不进行复制字节数组操作,直接设置字节指针为bytes,长度为length。

 

- (instancetype)initWithBytesNoCopy:(void *)bytes length:(NSUInteger)length;

初始化对象。
不进行复制字节数组操作,直接设置字节指针为bytes,长度为length。

 

- (instancetype)initWithBytes:(nullable const void *)bytes length:(NSUInteger)length;

初始化对象。 
复制字节数组,设置字节指针指向复制的字节数组,长度为length。

- (nullable instancetype)initWithContentsOfFile:(NSString *)path;

读取文件内容初始化对象。 
读取成功则返回对象,如果失败则返回nil。

- (nullable instancetype)initWithContentsOfFile:(NSString *)path options:(NSDataReadingOptions)readOptionsMask error:(NSError **)errorPtr;

读取文件内容初始化对象。 
读取成功则返回对象。如果失败则返回nil,错误信息保存在errorPtr中。 
参数readOptionsMask 指定文件读取选项。

 

typedef NS_OPTIONS(NSUInteger, NSDataReadingOptions) {
    NSDataReadingMappedIfSafe =   1UL << 0, 
    NSDataReadingUncached = 1UL << 1,   
    NSDataReadingMappedAlways  = 1UL << 3,

    NSDataReadingMapped = NSDataReadingMappedIfSafe,
    NSMappedRead = NSDataReadingMapped,
    NSUncachedRead = NSDataReadingUncached
};

- (nullable instancetype)initWithContentsOfURL:(NSURL *)url;

读取url内容初始化对象。
读取成功则返回对象,如果失败则返回nil。

 

- (nullable instancetype)initWithContentsOfURL:(NSURL *)url options:(NSDataReadingOptions)readOptionsMask error:(NSError **)errorPtr;

读取url内容初始化对象。 
读取成功则返回对象。如果失败则返回nil,错误信息保存在errorPtr中。 
参数readOptionsMask 指定文件读取选项。

- (instancetype)initWithData:(NSData *)data;

根据NSData对象初始化对象。

- (nullable id)initWithContentsOfMappedFile:(NSString *)path

根据文件内容初始化对象。读取文件内容的方式不是read系统调用,而是mmap系统调用。

构造

 

+ (instancetype)data;

构造空的NSData对象。

+ (instancetype)dataWithBytesNoCopy:(void *)bytes length:(NSUInteger)length freeWhenDone:(BOOL)b;

根据字节数组构造对象。不复制字节数组。

+ (instancetype)dataWithBytesNoCopy:(void *)bytes length:(NSUInteger)length;

根据字节数组构造对象。不复制字节数组。

+ (instancetype)dataWithBytes:(nullable const void *)bytes length:(NSUInteger)length;

根据字节数组构造对象。复制字节数组。

 + (nullable insta
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MF86

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值