正在试验这个:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *file = [documentsDirectory stringByAppendingPathComponent:@"binaryData"];
float b = 32.0f;
NSMutableData *data = [NSMutableData dataWithLength:sizeof(float)];
[data appendBytes:&b length:sizeof(float)];
[data writeToFile:file atomically:YES];
NSData *read = [NSData dataWithContentsOfFile:file];
float b2;
NSRange test = {0,4};
[read getBytes:&b2 range:test];
Run Code Online (Sandbox Code Playgroud)
奇怪的是,写入的文件似乎是8个字节而不是4.甚至可以使用0长度初始化nsdata,附加一个浮点然后写入,然后该文件将是4个字节.为什么NSData默认添加4个字节?长度为4的NSData应该生成长度为4而不是8的文件.
| 归档时间: |
|
| 查看次数: |
8520 次 |
| 最近记录: |