iOS文件流操作类-NSFileHandle

Objective-C使用NSFileHandle类对文件进行流操作。

类似于C++(或者C)操作文件流,NSFileHandle基本步骤:
1、打开文件,获取NSFileHandle对象。
2、对上面打开文件,通过NSFileHandle对象进行I/O流操作
3、关闭文件

NSFileHandle常用方法:

// 打开一个文件用于读入
+(NSFileHandle*)fileHandleForReadingAtPath:path
// 打开一个文件用于写入
+(NSFileHandle*)fileHandleForWritingAtPath:path 
// 打开一个文件用于读写
+(NSFileHandle*)fileHandleForUpdatingAtPath:path 
// 从设备或者通道返回可用数据
-(NSData*)availableData 
// 读取其余的数据知道文件的末尾(最多UINT_MAX字节)
-(NSData*)readDataToEndOfFile 
// 从文件中读取指定字节的内容
-(NSData*)readDataOfLength:(NSUInteger)bytes 
// 将data写入文件
-(void)writeData:data 
// 获取当前偏移量
-(unsigned long long)offsetInFile 
// 设置偏移量
-(void)seekToFileOffset:offset
// 将偏移量定位到文件的末尾
-(unsigned long long)seekToEndOfFile
// 讲文件的长度设置为offset字节
-(void)truncateFileAtOffset:offset 
// 关闭文件
-(void)closeFile

注:fileHandleForWritingAtPath和fileHandleForUpdatingAtPath所指定的文件必须是已经存在的,否则返回nil,并且返回的NSFileHandle对象文件偏移量在文件的开始位置。

注:我们一般不会牵涉到文件流的操作,但在http断点续传和下载的时候,就急需要文件流的操作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章