沙盒机制和文件(三)

来源:互联网 发布:java web项目开发文档 编辑:程序博客网 时间:2024/06/11 09:49

0、判断一个文件是否存在,传入全路径(fileExistsAtPath)

[objc] view plaincopy在CODE上查看代码片派生到我的代码片
  1. // 创建文件管理器  
  2. NSFileManager * fileManager = [NSFileManager defaultManager];  
  3.   
  4. NSString * documents = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject];  
  5. NSString * filePath = [documents stringByAppendingPathComponent:@"test"];  
  6.   
  7.     // 判断一个文件是否存在,传入全路径  
  8.     if ([fileManager fileExistsAtPath:filePath]) {  
  9.         NSLog(@"it is exit");  
  10.     }  

1、在Documents里创建目录

[cpp] view plaincopy
  1. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);    
  2.    NSString *documentsDirectory = [paths objectAtIndex:0];    
  3.    NSLog(@"documentsDirectory%@",documentsDirectory);    
  4.    NSFileManager *fileManager = [NSFileManager defaultManager];    
  5.    NSString *testDirectory = [documentsDirectory stringByAppendingPathComponent:@"test"];    
  6.    // 创建目录  
  7.    [fileManager createDirectoryAtPath:testDirectory withIntermediateDirectories:YES attributes:nil error:nil];  


2、在目录下创建文件

[cpp] view plaincopy
  1. NSString *testPath = [testDirectory stringByAppendingPathComponent:@"test00.txt"];    
  2. NSString *testPath2 = [testDirectory stringByAppendingPathComponent:@"test22.txt"];    
  3. NSString *testPath3 = [testDirectory stringByAppendingPathComponent:@"test33.txt"];    
  4.   
  5.   
  6. NSString *string = @"写入内容,write String";  
  7. [fileManager createFileAtPath:testPath contents:[string  dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];  
  8. [fileManager createFileAtPath:testPath2 contents:[string  dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];  
  9. [fileManager createFileAtPath:testPath3 contents:[string  dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];  


3、获取目录列里所有文件名

两种方法获取:subpathsOfDirectoryAtPathsubpathsAtPath

[cpp] view plaincopy
  1. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);    
  2. NSString *documentsDirectory = [paths objectAtIndex:0];    
  3. NSLog(@"documentsDirectory%@",documentsDirectory);    
  4. NSFileManager *fileManage = [NSFileManager defaultManager];    
  5. NSString *myDirectory = [documentsDirectory stringByAppendingPathComponent:@"test"];    
  6. NSArray *file = [fileManage subpathsOfDirectoryAtPath: myDirectory error:nil];   
  7. NSLog(@"%@",file);    
  8. NSArray *files = [fileManage subpathsAtPath: myDirectory ];   
  9. NSLog(@"%@",files);  

4、fileManager使用操作当前目录

[cpp] view plaincopy
  1. //创建文件管理器  
  2.     NSFileManager *fileManager = [NSFileManager defaultManager];  
  3.     NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
  4.     NSString *documentsDirectory = [paths objectAtIndex:0];  
  5.     //更改到待操作的目录下  
  6.     [fileManager changeCurrentDirectoryPath:[documentsDirectory stringByExpandingTildeInPath]];  
  7.     //创建文件fileName文件名称,contents文件的内容,如果开始没有内容可以设置为nil,attributes文件的属性,初始为nil  
  8.     NSString * fileName = @"testFileNSFileManager.txt";  
  9.     NSArray *array = [[NSArray alloc] initWithObjects:@"hello world",@"hello world1", @"hello world2",nil];  
  10.     [fileManager createFileAtPath:fileName contents:array attributes:nil];  

5、删除文件

[cpp] view plaincopy
  1. [fileManager removeItemAtPath:fileName error:nil];  
0 0
原创粉丝点击