美文网首页
NSData dataWithBytes的理解和用法

NSData dataWithBytes的理解和用法

作者: 蝼蚁撼树 | 来源:发表于2016-11-18 15:21 被阅读0次

NSdata dataWithBytes 的常见写法如下

 char *str = "123456789";
 NSData *data = [NSData dataWithBytes:str length:strlen(str)];
 NSString *strN = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
 NSLog(@"%@",strN);

输出结果 如下
2016-11-18 15:12:30.103 测试文件[2167:161277] 123456789
分析,datawithbytes: 实际上是获取str在内存中的指针地址,length实际上是需要读写的长度.

因为char *类的指针是占一个字节,strlen(str)=9,所以后面就回读取9个字节.将"123456789"打印出来.

    char *str = "123456789";
    NSData *data = [NSData dataWithBytes:str length:strlen(str)-5];
    NSString *strN = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
    NSLog(@"%@",strN);

将length的长度减少为strlen(str)-5,NSData 也就写入了4个字节,打印结果如下
2016-11-18 15:17:05.134 测试文件[2190:165486] 1234

NSData dataWithBytes length 就是指定文件的首地址,然后指定长度,写入相应文件内容

相关文章

网友评论

      本文标题:NSData dataWithBytes的理解和用法

      本文链接:https://www.haomeiwen.com/subject/afxspttx.html