IOS 文件读写操作详解及简单实例
iPhone文件读写操作
1,写文件操作
-(IBAction)btnWrite:(id)sender{ //创建文件管理器 NSFileManager*fileManager=[NSFileManagerdefaultManager]; //获取路径 //参数要获取的哪种路径 NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES); NSString*documentDirectory=[pathsobjectAtIndex:0];//去除需要的路径 //更改到操作的目录下 [fileManagerchangeCurrentDirectoryPath:[documentDirectorystringByExpandingTildeInPath]]; //创建文件fileName文件名称,contents文件内容,如果开始没有内容可以设置为nil,attributes文件的属性,初始为nil [fileManagercreateFileAtPath:@"fileName"contents:nilattributes:nil]; //删除待删除文件 [fileManagerremoveItemAtPath:@"createNewFile"error:nil]; //获取文件路径 NSString*path=[documentDirectorystringByAppendingPathComponent:@"fileName"]; NSLog(@"path==%@",path); //待写入的数据 NSString*temp=@"Helloworld"; intdata0=1000000; floatdata2=23.23f; //创建数据缓冲 NSMutableData*writer=[[NSMutableDataalloc]init]; //将字符串添加到缓冲中 [writerappendData:[tempdataUsingEncoding:NSUTF8StringEncoding]]; [writerappendBytes:&data0length:sizeof(data0)]; [writerappendBytes:&data2length:sizeof(data2)]; [writerwriteToFile:pathatomically:YES]; [writerrelease]; }
2,读文件操作
-(IBAction)btnRead:(id)sender{ //创建文件管理器 NSFileManager*fileManager=[NSFileManagerdefaultManager]; //获取路径 //参数要获取的哪种路径 NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES); NSString*documentDirectory=[pathsobjectAtIndex:0];//去除需要的路径 //更改到操作的目录下 [fileManagerchangeCurrentDirectoryPath:[documentDirectorystringByExpandingTildeInPath]]; //创建文件fileName文件名称,contents文件内容,如果开始没有内容可以设置为nil,attributes文件的属性,初始为nil [fileManagercreateFileAtPath:@"fileName"contents:nilattributes:nil]; //删除待删除文件 [fileManagerremoveItemAtPath:@"createNewFile"error:nil]; //获取文件路径 NSString*path=[documentDirectorystringByAppendingPathComponent:@"fileName"]; NSLog(@"path==%@",path); //待写入的数据 NSString*temp=@"Helloworld"; intdata0=1000000; floatdata2=23.23f; //创建数据缓冲 NSMutableData*writer=[[NSMutableDataalloc]init]; //将字符串添加到缓冲中 [writerappendData:[tempdataUsingEncoding:NSUTF8StringEncoding]]; [writerappendBytes:&data0length:sizeof(data0)]; [writerappendBytes:&data2length:sizeof(data2)]; [writerwriteToFile:pathatomically:YES]; [writerrelease]; //读取操作 intgData0; floatgData1; NSString*gData2; NSData*reader=[NSDatadataWithContentsOfFile:path]; gData2=[[NSStringalloc]initWithData:[readersubdataWithRange:NSMakeRange(0,[templength])]encoding:NSUTF8StringEncoding]; [readergetBytes:&gData0range:NSMakeRange([templength],sizeof(gData0))]; [readergetBytes:&gData1range:NSMakeRange([templength]+sizeof(gData0),sizeof(gData1))]; NSLog(@"gData0==%d",gData0); NSLog(@"gData1==%f",gData1); NSLog(@"gData2==%@",gData2); //lblText.text=gData2; }
iphone实现文件的读写操作
iphone可以很容易的实现文件的读写,但是如果你没有使用苹果公司99美元开发者sdk的话,你利用破解打出来的api包,安装到手机上不能把文件写入手机.下面是我实现读写的代码:
#import"ManagerFile.h" @implementationManagerFile -(void)writeFile:(NSString*)file { //创建文件管理器 NSFileManager*fileManager=[NSFileManagerdefaultManager]; //获取路径 //参数NSDocumentDirectory要获取那种路径 NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES); NSString*documentsDirectory=[pathsobjectAtIndex:0];//去处需要的路径 //更改到待操作的目录下 [fileManagerchangeCurrentDirectoryPath:[documentsDirectorystringByExpandingTildeInPath]]; //创建文件fileName文件名称,contents文件的内容,如果开始没有内容可以设置为nil,attributes文件的属性,初始为nil //获取文件路径 [fileManagerremoveItemAtPath:@"username"error:nil]; NSString*path=[documentsDirectorystringByAppendingPathComponent:@"username"]; //创建数据缓冲 NSMutableData*writer=[[NSMutableDataalloc]init]; //将字符串添加到缓冲中 [writerappendData:[filedataUsingEncoding:NSUTF8StringEncoding]]; //将其他数据添加到缓冲中 //将缓冲的数据写入到文件中 [writerwriteToFile:pathatomically:YES]; [writerrelease]; } -(NSString*)readFile { //创建文件管理器 NSFileManager*fileManager=[NSFileManagerdefaultManager]; //获取路径 //参数NSDocumentDirectory要获取那种路径 NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES); NSString*documentsDirectory=[pathsobjectAtIndex:0];//去处需要的路径 //更改到待操作的目录下 [fileManagerchangeCurrentDirectoryPath:[documentsDirectorystringByExpandingTildeInPath]]; //获取文件路径 NSString*path=[documentsDirectorystringByAppendingPathComponent:@"username"]; NSData*reader=[NSDatadataWithContentsOfFile:path]; return[[NSStringalloc]initWithData:reader encoding:NSUTF8StringEncoding]; } @end
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!