程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> Objective-C文件的存取

Objective-C文件的存取

編輯:關於C語言

一般的,文件存取都有兩種方式,這兩種方式主要是根據文件的內容來劃分的。對於由文字組成的文件可以利用字符讀寫的方式,而其他類型的文件通常用字節碼的形式來存的(當然,我們亦可以用字節碼來存文字)。

在OC中NSString類直接能夠調用內部的方法去讀區、寫入string。而不像java得用IO流類進行一系列的封裝。而且OC的文本訪問是很簡單的,比如用下面的幾行就能對特定的文本文件寫入:

#pragma 使用NSString寫入文件中:
        
        NSError *error = nil;
        NSMutableString *str = [[NSMutableString alloc] init];
        for(int i=0;i<10;i++){
            [str appendString:@"你好!hello\n"];
            
        }
        if([str writeToFile:@"/tmp/my.txt" atomically:YES encoding:NSUTF8StringEncoding error:&error]){
            NSLog(@"success");
        }
        else{
            NSLog(@"error:%@",[error localizedDescription]);
        }

而讀取也是很少的:

#pragma 使用NSString從文件中讀取:
        NSError *error = nil;
        NSString *str = [[NSString alloc] initWithContentsOfFile:@"/tmp/my.txt" encoding:NSUTF8StringEncoding error:&error];
        if (str) {
            NSLog(@"content:%@",str);
        }
        else {
            NSLog(@"error:%@",[error localizedDescription]);
        }
然後呢?

當使用NSData的時候,我更加震驚地體會到了Objective-C的獨特簡便性,對於java/c/c++顯然有挺大的優勢,而對於python/php來說也是簡單明確的。

一下就是幾行代碼實現使用NSData的文件讀寫。

#pragma 使用NSData存取
        NSError *error = nil;
        NSData *data = [[NSData alloc] initWithContentsOfFile:@"/tmp/my.txt"];
        if ([data writeToFile:@"/tmp/my2.txt" options:NSDataWritingAtomic error:&error]) {
            NSLog(@"success");
        }

        else{
            NSLog(@"error:%@",error);
        }



  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved