<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                Objective-C使用NSFileHandle類對文件進行基本操作,IOS文件操作 NSFileHandle類中得方法可以對文件進行基本的讀寫,偏移量的操作。 NSFileHandle基本步驟: 1、打開文件,獲取一個NSFileHandle對象。 2、對打開NSFileHandle的文件對象行I/O操作 3、關閉文件對象 ~~~ NSFileHandle常用方法: +(NSFileHandle*)fileHandleForReadingAtPath:path 打開一個文件用于讀入 +(NSFileHandle*)fileHandleForWritingAtPath:path 打開一個文件用于寫入 +(NSFileHandle*)fileHandleForUpdatingAtPath:path 打開一個文件用于讀寫 -(NSData*)availableData 從設備或者通道返回可用數據 -(NSData*)readDataToEndOfFile 讀取其余的數據知道文件的末尾(最多UINT_MAX字節) -(NSData*)readDataOfLength:(NSUInteger)bytes 從文件中讀取指定字節的內容 -(void)writeData:data 將data寫入文件 -(unsigned long long)offsetInFile 獲取當前偏移量 -(void)seekToFileOffset:offset 設置偏移量 -(unsigned long long)seekToEndOfFile 將偏移量定位到文件的末尾 -(void)truncateFileAtOffset:offset 講文件的長度設置為offset字節 -(void)closeFile 關閉文件 方法fileHandleForWritingAtPath和fileHandleForUpdatingAtPath所指定的文件必須是已經存在的,否則返回nil,另外對于這兩個方法中文件的偏移量都是為文件的開始。 方法readDataToEndOfFile每次從文件中讀取最多UNIT_MAX字節的數據,這個量定義在 <limits.h>中。 在UNIX系統下編程打開文件進行寫入并不會截斷文件,需要自己完成截斷 ~~~ 1、實例程序,通過程序對文件進行一些基本操作: ~~~ #import <Foundation/Foundation.h> int main(int argc, const charchar * argv[]) { @autoreleasepool { NSFileHandle *inFile,*outFile; NSData *buffer; NSString *fileContent = @"這些是文件內容,這些是文件內容,這些是文件內容,這些是文件內容,這些是文件內容"; NSFileManager *fm = [NSFileManager defaultManager]; //創建一個文件 [fm createFileAtPath:@"testFile.txt" contents:[fileContent dataUsingEncoding:NSUTF8StringEncoding] attributes:nil]; //創建一個需要寫入的文件 [fm createFileAtPath:@"outFile.txt" contents:nil attributes:nil]; //讀取文件 inFile = [NSFileHandle fileHandleForReadingAtPath:@"testFile.txt"]; //寫入文件 outFile = [NSFileHandle fileHandleForWritingAtPath:@"outFile.txt"]; if(inFile!=nil){ //讀取文件內容 buffer = [inFile readDataToEndOfFile]; //將文件的字節設置為0,因為他可能包含數據 [outFile truncateFileAtOffset:0]; //將讀取的內容內容寫到outFile.txt中 [outFile writeData:buffer]; //關閉輸出 [outFile closeFile]; //驗證outFile內容 NSLog(@"%@",[NSString stringWithContentsOfFile:@"outFile.txt" encoding:NSUTF8StringEncoding error:NULL]); //創建一個新的文件用來循環寫入 [fm createFileAtPath:@"outFile2.txt" contents:nil attributes:nil]; //打開一個新的輸出 outFile = [NSFileHandle fileHandleForWritingAtPath:@"outFile2.txt"]; //設置一個循環寫入10條數據,每條數據都再后面添加上而不是覆蓋 for (int i = 0; i<10; i++) { //將偏移量設置為文件的末尾 [outFile seekToEndOfFile]; //寫入數據 [outFile writeData:buffer]; } //驗證內容 NSLog(@"outFile2:%@",[NSString stringWithContentsOfFile:@"outFile2.txt" encoding:NSUTF8StringEncoding error:NULL]); //關閉所有 [outFile closeFile]; [inFile closeFile]; } } return 0; } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看