數據持久化 屬性列表代碼

- (void)viewDidLoad {安全

    [super viewDidLoad];ide

    self.view.backgroundColor=[UIColor lightGrayColor];函數

//    建立字符串持久化按鈕atom

    

    self.buttonString=[[UIButton alloc]initWithFrame:CGRectMake(100, 50, 200, 50)];spa

    [self.buttonString setTitle:@"字符串持久化" forState:UIControlStateNormal];orm

    self.buttonString.backgroundColor=[UIColor greenColor];對象

//    方法調用字符串

    [self.buttonString addTarget:self action:@selector(dataPersistence) forControlEvents:UIControlEventTouchUpInside];get

    [self.view addSubview:self.buttonString];string

 

}

 

//數據持久化

-(void)dataPersistence

{

//    字符串持久化

 

    //獲取Documents文件目錄:常量NSDocumentDirectory代表咱們正在查找Documents目錄的路徑。第二個常量NSUserDomainMask代表咱們但願將搜索限制在應用的沙盒內,在OS X中代表咱們但願該函數查看用戶的主目錄。

    NSArray *arrayStr=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    //表示將文件放入Documents文件的最後一個,即path做爲最後一個對象

    NSString *path=[arrayStr lastObject];

    //@"ANewFile.plist"爲新文件名,方法調用後 ,newPathStr 中存放了文件 ANewFile.plist 在 Documents 目錄中的完整路徑

    NSString *newPathStr=[path stringByAppendingPathComponent:@"ANewFile.plist"];

    NSLog(@"%@",newPathStr);

    //先建立一個NSString(字符串)類型的對象,而後調用實例方法 writeToFile:atomically 將參數寫入文件中

    NSString *myFile=@"NewString";

    [myFile writeToFile:newPathStr atomically:YES encoding:NSUTF8StringEncoding error:nil];

//    說明:這裏的atomically參數讓該方法將數據寫入輔助文件,而不是寫入指定位置。成功寫入該文件以後,輔助文件將被複制到第一個參數指定的位置。這是更安全的寫入文件的方法,由於若是應用在保存期間崩潰,則現有文件(若是有)不會被破壞。儘管增長一點開銷,可是多數狀況下仍是值得的。

 

 

//    說明:這裏的myFile 是字符串,因此是字符串的持久化,他能夠用Array,Dictionary,Data等能夠被序列化的類型;能夠被序列化的類型有:

1)NSArray、NSMutableArray

2)NSDictionary、NSMutableDictionary

3)NSData、NSMutableData

4)NSString、NSMutableString

5)NSNumber

6)NSDate

 

//獲取幾種沙盒目錄的方法

     //獲取Documents目錄

       NSArray *arrayStr=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

       NSString *path=[arrayStr lastObject];

 

    //獲取Library目錄方法

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);

    NSString *libraryDirectory = paths[0];

 

    //獲取tmp目錄方法    

    NSString *tempPath = NSTemporaryDirectory();

    NSString *filename = [tempPath stringByAppendingPathComponent:@"theFile.txt"];

}

相關文章
相關標籤/搜索