文件操作-FileHandle
1.使用文件句柄(FileHandle)的对象可以对文件的内容进行操作
2.文件的写操作
2.1.将新加的字符在文件的前面添加,而不清空文件内容,只是替换从文件开头的文字
1 2 | NSFileHandle *fhw = [ NSFileHandle fileHandleForWritingAtPath:[ NSString stringWithFormat:@ "%@/dir/testFile" ,PATH]]; [fhw writeData:[@ "haha" dataUsingEncoding: NSUTF8StringEncoding ]]; |
2.2.将文件内容清空,然后再插入新字符
1 2 3 | // 将文件内容截短至0字节 [fhw truncateFileAtOffset:0]; [fhw writeData:[@ "haha" dataUsingEncoding: NSUTF8StringEncoding ]]; |
2.3.保持原来文件内容不变,只是在文件的末尾添加文字
1 2 3 | // 将文件的读写指针设置到文件的末尾 [fhw seekToEndOfFile]; [fhw writeData:[@ " menmory is none" dataUsingEncoding: NSUTF8StringEncoding ]]; |
3.文件的读操作
3.1.以只读方式打开文件生成文件句柄
1 | NSFileHandle *fh = [ NSFileHandle fileHandleForReadingAtPath:[ NSString stringWithFormat:@ "%@/dir/testFile" ,PATH]]; |
3.2.读取文件的前xx个字节,并且打印
1 2 3 | NSData *data = [fh readDataOfLength:8]; NSString *str = [[ NSString alloc] initWithData:data encoding: NSUTF8StringEncoding ]; NSLog (@ "%@" ,str); |
3.3.如果文件内容不多,直接读取到文件的结尾
1 2 3 | NSData * data2 = [fh readDataToEndOfFile]; NSString *str2 = [[ NSString alloc] initWithData:data2 encoding: NSUTF8StringEncoding ]; NSLog (@ "%@" ,str2); |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步