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斷點續傳和下載的時候,就急需要文件流的操作。

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