iOS之NSData与NSMutableData的使用
1、NSData的创建:实例与类方法
- data:创建一个不包含任何数据的空的NSData对象
- dataWithBytes:length:/initWithBytes:length::复制C数组所包含的数据来初始化NSData的数据
- dataWithBytesNoCopy:length:/initWithBytesNoCopy:length:直接利用C数组所包含的数据来初始化NSData对象。当该对象被执行malloc方法销毁自己时,程序会释放该C数组
- dataWithBytesNoCopy:length:freeWhenDone:/initWithBytesNoCopy:length:freeWhenDone::直接利用C数组所包含的数据来初始化NSData对象,只有当最后一个参数为YES,且该对象被执行malloc方法销毁自己时,程序才会释放该C数组
- dataWithContentsOfFile:/initWithContentsOfFile::直接读取文件内容,并利用文件内容来初始化NSData
- dataWithContentsOfURL:/initWithContentsOfURL::直接读取URL关联内容,并利用该URL关联的内容来初始化NSData
- dataWithData:/initWithData::直接使用另一个NSData所包含的数据来初始化新创建的NSData
- bytes:返回该NSData所包含的数据
- getBytes:length:获取NSData所包含的指定长度的数据
- getBytes:range::获取NSData所包含的指定范围的数据
- subdataWithRange::获取NSData所包含的指定范围的数据组成的NSData对象
- writeToFile:atomically::将NSData数据写入文件
- writeToURL:atomically::将NSData数据写入指定URL的资源
#import <Foundation/Foundation.h> int main(int argc , char * argv[]) { @autoreleasepool{ // 使用NSData读取指定URL对应的数据 NSData* data = [NSData dataWithContentsOfURL: [NSURL URLWithString:@"http://www.crazyit.org/ethos.php"]]; NSLog(@"%ld" , [data length]); // 定义一个长度为100的数组 char buffer[100]; // 将NSData指定范围的数据读入数组 [data getBytes:buffer range: NSMakeRange(103, 100)]; // 输出数组的内容 NSLog(@"%s" , buffer); // 直接将NSData的数据用UTF-8的格式转换字符串 NSString* content = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; NSLog(@"----------输出网页内容---------"); NSLog(@"%@" , content); } }
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。