NSData 是不可变二进制数据
NSMutableData 是可变的二进制数据
NSData创建后不可以再修改,NSMutableData可以再次修改。
NSData和NSMutableData存储的是二进制数据,在文件操作,网络,以及核心图形图像中使用较广泛
特别注意:
一定要区分:NSData和NSDate
NSDate 是时间
NSData 是数据
初始化/创建一个空的data
NSData *data1 = [NSData data];
2)将字符串转换成NSData
//使用const关键字来将一个变量变为常量。const修饰的常量也称为‘命名常量’或者‘符号常量’
const char *str = "Hello";
NSData *data2 = [NSData dataWithBytes: str length:strlen(str)];
3)将OC中的字符串转化成NSData
NSString *string = @"你好吗?";
NSData *data3 = [string dataUsingEncoding:NSUTF8StringEncoding];
4)将本地文件中的图片转换成数据
NSData *data4 = [NSData dataWithContentsOfFile:@"图片路径"];
5)将数据写入本地文件
BOOL flag = [data4 writeToFile:@"存储路径"];
6)求data的字节长度
NSInteger length = data4.length;
NSData与NSMutableData的关系:NSMutableData继承与NSData,所以NSMutableData在初始化以及一些与字符串之间的转换的方法相似。而与可变数组、可变字符串一样,NSMutableData也用都“增”、“删”、“改”的一些操作。