文件管理器:
1 #import "ViewController.h" 2 3 @interface ViewController () 4 5 @end 6 7 @implementation ViewController 8 9 - (void)viewDidLoad { 10 [super viewDidLoad]; 11 // Do any additional setup after loading the view, typically from a nib. 12 13 #pragma mark - 文件管理器 创建 14 //创建对象 15 NSFileManager *manager = [NSFileManager defaultManager]; 16 17 //创建路径 18 NSString *path = NSHomeDirectory(); 19 20 path = [path stringByAppendingPathComponent:@"test/myApp"]; 21 NSLog(@"path = %@", path); 22 BOOL success = [manager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil]; 23 if (success) { 24 NSLog(@"文件创建成功"); 25 }else { 26 NSLog(@"文件创建失败"); 27 } 28 29 NSString *path2 = [path stringByAppendingPathComponent:@"test2/myApp"]; 30 NSLog(@"======%@", path2); 31 [manager createDirectoryAtPath:path2 withIntermediateDirectories:YES attributes:nil error:nil]; 32 33 #pragma mark - 文件管理器 添加 34 //向文件夹添加字符串 35 path = [path stringByAppendingPathComponent:@"zifuchuan.txt"]; 36 37 //初始化一个字符串 38 NSString *string = @"今天是个号入职"; 39 BOOL success1 = [string writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:nil]; 40 if (success1) { 41 NSLog(@"成功"); 42 NSLog(@"path=========%@", path); 43 }else { 44 NSLog(@"失败"); 45 } 46 47 path = [path2 stringByAppendingPathComponent:@"new.text"]; 48 NSString *newStr = @"随便写点吧"; 49 [newStr writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:nil]; 50 NSLog(@"-------%@", path); 51 52 #pragma mark - 文件管理器 删除 53 [manager removeItemAtPath:path error:nil];//删除的是该文件夹下的文档,该文件夹不能删除 54 #pragma mark - 文件管理器 移动、copy 55 56 //Documents路径 57 NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; 58 59 //创建一个文件夹 stringByDeletingLastPathComponent删除最后一部分内容 60 NSString *copyPath = [documentPath stringByAppendingPathComponent:@"备份/text.txt"]; 61 [manager createDirectoryAtPath:[copyPath stringByDeletingLastPathComponent] withIntermediateDirectories:YES attributes:nil error:nil]; 62 NSString *str = @"往里面写内容的时候才有txt文本"; 63 NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];//字符串转换为data类型 64 [manager createFileAtPath:copyPath contents:data attributes:nil]; 65 NSLog(@"-=-=-=-=-=%@", copyPath); 66 67 //创建一个toPath 将copyPath中的内容移动/复制到toPath 68 NSString *toPath = [documentPath stringByAppendingPathComponent:@"hello/wode.txt"]; 69 70 [manager createDirectoryAtPath:[toPath stringByDeletingLastPathComponent] withIntermediateDirectories:YES attributes:nil error:nil]; 71 //移动 72 //[manager moveItemAtPath:copyPath toPath:toPath error:nil]; 73 NSLog(@"topath = %@", toPath); 74 //复制 75 [manager copyItemAtPath:copyPath toPath:toPath error:nil]; 76 77 } 78 79 @end
文件对接器:
1 @interface ViewController () 2 3 @end 4 5 @implementation ViewController 6 7 - (void)viewDidLoad { 8 [super viewDidLoad]; 9 // Do any additional setup after loading the view, typically from a nib. 10 #pragma mark - 使用NSFileMessage创建文件 11 NSFileManager *fileManager = [NSFileManager defaultManager]; 12 NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject]; 13 NSString *strPath = [documentPath stringByAppendingPathComponent:@"file.txt"]; 14 15 [fileManager createFileAtPath:strPath contents:[@"hello" dataUsingEncoding:NSUTF8StringEncoding] attributes:nil]; 16 17 NSLog(@"%@", strPath); 18 19 #pragma mark - 使用NSFileHandle向文件里追加内容 20 //创建handle对象 21 NSFileHandle *fileHandle = [NSFileHandle fileHandleForUpdatingAtPath:strPath]; 22 //搜索到文本内容末尾 23 [fileHandle seekToEndOfFile]; 24 25 NSString *appendStr = @"我是handle的内容"; 26 [fileHandle writeData:[appendStr dataUsingEncoding:NSUTF8StringEncoding]]; 27 28 [fileHandle closeFile]; 29 30 #pragma mark - 定位数据 31 32 //将“123456”写入file2.txt文件夹中 33 NSString * content = @"123456"; 34 NSString * filePath2 = [documentPath stringByAppendingPathComponent:@"file2.txt"]; 35 [fileManager createFileAtPath:filePath2 contents:[content dataUsingEncoding:NSUTF8StringEncoding] attributes:nil]; 36 37 //通过fileHandle读取 38 fileHandle = [NSFileHandle fileHandleForReadingAtPath:filePath2]; 39 // 获取数据长度 40 NSUInteger length = [[fileHandle availableData] length]; 41 // 偏移量文件的一半 42 [fileHandle seekToFileOffset:length/2.0]; 43 //从一半位置读取到最后 44 NSData * data = [fileHandle readDataToEndOfFile]; 45 [fileHandle closeFile]; 46 //打印读取的字符串 47 NSString * string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; 48 NSLog(@"%@",string); 49 50 } 51 52 - (void)didReceiveMemoryWarning { 53 [super didReceiveMemoryWarning]; 54 // Dispose of any resources that can be recreated. 55 } 56 57 @end
时间: 2024-10-05 09:22:10