成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

iOS學習之路 文件操作

移動開發 iOS
本文介紹的是iOS學習之路 文件操作,主要講述了文件的常用操作,我們來看詳細內容。

iOS學習之路 文件操作是本文要介紹對內容,不多說,直接進入話題。因為應用是在沙箱(sandbox)中的,在文件讀寫權限上受到限制,只能在幾個目錄下讀寫文件

Documents:應用中用戶數據可以放在這里,iTunes備份和恢復的時候會包括此目錄 tmp:存放臨時文件,iTunes不會備份和恢復此目錄,此目錄下文件可能會在應用退出后刪除
Library/Caches:存放緩存文件,iTunes不會備份此目錄,此目錄下文件不會在應用退出刪除。

在Documents目錄下創建文件

代碼如下:

  1. NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory   
  2.                                             , NSUserDomainMask   
  3.                                             , YES);   
  4. NSLog(@"Get document path: %@",[paths objectAtIndex:0]);   
  5.  
  6. NSString *fileName=[[paths objectAtIndex:0] stringByAppendingPathComponent:@"myFile"];   
  7. NSString *content=@"a";   
  8. NSData *contentData=[content dataUsingEncoding:NSASCIIStringEncoding];   
  9. if ([contentData writeToFile:fileName atomically:YES]) {   
  10.     NSLog(@">>write ok.");   

可以通過ssh登錄設備看到Documents目錄下生成了該文件。

上述是創建ascii編碼文本文件,如果要帶漢字,比如:

  1. NSString *fileName=[[paths objectAtIndex:0] stringByAppendingPathComponent:@"myFile"];   
  2. NSString *content=@"更深夜靜人已息";   
  3. NSData *contentData=[content dataUsingEncoding:NSUnicodeStringEncoding];   
  4. if ([contentData writeToFile:fileName atomically:YES]) {   
  5.     NSLog(@">>write ok.");   

如果還用ascii編碼,將不會生成文件。這里使用NSUnicodeStringEncoding就可以了。

通過filezilla下載到創建的文件打開,中文沒有問題:

iOS學習之路 文件操作

在其他目錄下創建文件

如果要指定其他文件目錄,比如Caches目錄,需要更換目錄工廠常量,上面代碼其他的可不變:

  1. NSArray *paths=NSSearchPathForDirectoriesInDomains(NSCachesDirectory   
  2.                                                 , NSUserDomainMask   
  3.                                                 , YES); 

使用NSSearchPathForDirectoriesInDomains只能定位Caches目錄和Documents目錄。

tmp目錄,不能按照上面的做法獲得目錄了,有個函數可以獲得應用的根目錄:

  1. NSHomeDirectory() 

也就是Documents的上級目錄,當然也是tmp目錄的上級目錄。那么文件路徑可以這樣寫:

  1. NSString *fileName=[NSHomeDirectory() stringByAppendingPathComponent:@"tmp/myFile.txt"]; 

或者,更直接一點,可以用這個函數:

  1. NSTemporaryDirectory()  

不過生成的路徑將可能是:

  1. …/tmp/-Tmp-/myFile.txt 

使用資源文件

在編寫應用項目的時候,常常會使用資源文件,比如:

iOS學習之路 文件操作

安裝到設備上后,是在app目錄下的:

iOS學習之路 文件操作

以下代碼演示如何獲取到文件并打印文件內容:

  1. NSString *myFilePath = [[NSBundle mainBundle]   
  2.                         pathForResource:@"f"   
  3.                         ofType:@"txt"];   
  4. NSString *myFileContent=[NSString stringWithContentsOfFile:myFilePath encoding:NSUTF8StringEncoding error:nil];   
  5. NSLog(@"bundel file path: %@ \nfile content: %@",myFilePath,myFileContent); 

代碼運行效果:

iOS學習之路 文件操作

小結:iOS學習之路 文件操作的內容介紹完了,希望本文對你有所幫助!

本文編寫時參考了:http://www.servin.com/iphone/iPhone-File-IO.html

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-07-21 11:25:13

iOS 窗口 事件

2011-07-25 16:31:51

iOS XML 文件

2011-07-26 09:32:08

iPhone 模擬器

2011-07-21 17:11:15

iOS 日期 間隔

2011-03-17 11:08:49

Java SE

2014-07-28 14:04:26

2014-06-18 09:55:29

iOS開發者學習Android

2009-10-16 15:48:43

如何學習Java

2011-06-17 10:19:11

Qt QWidge QSetting

2011-06-17 09:58:26

Qt Chapter QObject

2011-03-21 13:28:14

MongoDB文件存取

2011-07-20 10:31:49

Cocoa Slider 顏色

2021-05-24 16:01:35

人工智能AI機器學習

2017-04-14 14:57:03

機器學習學習資源

2011-08-23 17:06:03

2014-07-30 09:25:55

2015-07-20 13:56:59

SDN

2009-09-27 18:06:00

CCNACCNPcisco

2011-07-19 15:55:09

Xcode Interface Builder

2011-07-25 10:03:06

Objective-C 委托
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 鸳鸯谱在线观看高清 | 国产a区| 亚洲一区网站 | 宅女噜噜66国产精品观看免费 | 成年人国产在线观看 | 日日夜夜精品视频 | 国产精品久久久 | 超碰在线播 | 色999视频 | 亚洲一区二区三区四区在线观看 | 国产一级一级毛片 | 国产在线视频一区二区 | 欧美一区二区三区在线 | 成人小视频在线观看 | 天天久久 | 四虎永久 | 亚洲成人av一区二区 | 国产1页 | 婷婷国产一区二区三区 | 成人欧美一区二区三区黑人孕妇 | 欧美午夜激情在线 | 91tv在线观看 | 婷婷国产一区 | 久久精品毛片 | 久草网址| 中文字幕在线播放不卡 | 四虎首页| 欧美三级成人理伦 | 一区二区三区国产在线观看 | 中文字幕高清av | 欧美精品福利视频 | 国产精品一卡二卡三卡 | 久久精品免费观看 | 波多野结衣亚洲 | 国产精品日韩一区二区 | xxxxxx国产| 亚洲第一av | 久久精品国产精品青草 | 国产精品久久久久久 | 欧美综合一区二区 | 日韩精品一区二区三区中文在线 |