iPhone App擷取檔案教程

來源:互聯網
上載者:User

iPhone App擷取檔案教程是本文要介紹的內容,對於一個運行在iPhoneapp,它只能訪問自己根目錄下得一些檔案所謂sandbox).一個app發布到iPhone上後,它得目錄結構如下:

1、其中得 app root 可以用 NSHomeDirectory() 訪問到;

2、Documents 目錄就是我們可以用來寫入並儲存檔案得地方,一般可通過:

 
  1. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
  2. NSString *documentsDirectory = [paths objectAtIndex:0]; 

得到。

3、tmp 目錄我們可以在裡面寫入一些程式運行時需要用得資料,裡面寫入得資料在程式退出後會沒有。可以通過

 
  1. NSString *NSTemporaryDirectory(void);  

方法得到;

4、檔案一些主要操作可以通過NSFileManage 來操作,可以通過 [NSFileManger defaultManger] 得到它得執行個體。

相關得一些操作:

建立一個目錄: 比如要在Documents下面建立一個test目錄,

 
  1. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
  2.  
  3. NSString *documentsDirectory = [paths objectAtIndex:0];  
  4.  
  5. NSLog(@”%@”,documentsDirectory);NSFileManager *fileManage = [NSFileManager defaultManager];  
  6. NSString *myDirectory = [documentsDirectory stringByAppendingPathComponent:@“test”];  
  7. BOOL ok = [fileManage createDirectoryAtPath:myDirectory attributes:nil]; 

取得一個目錄下得所有檔案名稱: 如上面的myDirectory)可用

 
  1. NSArray *file = [fileManager subpathsOfDirectoryAtPath: myDirectory error:nil];   
  2.  或  
  3. NSArray *files = [fileManager subpathsAtPath: myDirectory ]; 

讀取某個檔案:

 
  1. NSData *data = [fileManger   
  2. contentsAtPath:myFilePath];//myFilePath 

是包含完整路徑的檔案名稱

或直接用NSData 的類方法:

 
  1. NSData *data = [NSData dataWithContentOfPath:myFilePath]; 

儲存某個檔案:

可以用 NSFileManager的

 
  1. - (BOOL)createFileAtPath:(NSString *)path contents:(NSData *)data attributes:(NSDictionary *)attr; 

或 NSData 的

 
  1. - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile;  
  2. - (BOOL)writeToFile:(NSString *)path options:(NSUInteger)writeOptionsMask error:(NSError **)errorPtr;  

小結:iPhone App擷取檔案教程的內容介紹完了,希望本文呢對你有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.