1. 程式人生 > >iOS檔案流操作類-NSFileHandle

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