在ios的开发中,经常遇到要读写文件的情况,例如处理照片,采集信息等,那么在ios中对文件的读写有两种方式:
1 使用NSData 来将整个数据读取到内存中
NSData *myData = [[[NSData alloc] initWithContentsOfFile:appFile] autorelease];
将文件写到文件中
[data writeToFile:appFile atomically:YES]
使用这种方式比较适合针对小文件的读写,可以全部的读到内存中处理,比如说全局性的配置文件等。
2 使用c的api来读取
在ios的开发中,可以使用c,objective-c 混合编程的方法来进行文件的操作,我们可以使用fseek,fread,fwrite等函数来对文件读写。
NSString* imgFile = [[NSBundle mainBundle] pathForResource:fileName ofType:@"bundle" inDirectory: dir ];
FILE * _imgFileHandle =NULL;
_imgFileHandle =fopen([imgFile UTF8String],"rb");
if (_imgFileHandle != NULL)
{
long idxPos = 20;
fseek(_imgFileHandle, idxPos, SEEK_SET);
char * buff[5];
memset(buff,0,5);
fread(buff, 1, 5, _imgFileHandle);
fclose(_imgFileHandle);
}