數據持久化存儲--plist文件

//1.屬性列表的方式,plist文件。

//輕量級的數據涉及到的主要的類NSUserDefaults

//存儲數據:數組.字典.集合.沙盒

//持久化存儲數據存儲本地(沙盒機制)

//沙盒機制:蘋果的安全機制

/*

*每個iOS應用都有自己的沙盒,應用的運行全都在自己的沙盒下進行的

*沙盒相當于一個設置了僅主人可見權限的一個文件夾

*1.別的應用不可以訪問自己應用下的沙盒你也不可以訪問別的應用的沙盒

*2.應用程序間的數據不能共享沙盒中的文件不能被拷貝到其他的應用沙盒下

*3.蘋果禁止任何讀寫沙盒以外的文件的操作禁止應用將內容或者是數據寫入到沙盒以外的文件夾

*/

//獲取沙盒文件路徑

NSString *str =NSHomeDirectory();

NSLog(@"%@",str);

/Users/mac/Library/Developer/CoreSimulator/Devices/36C30440-0494-424D-8F4A-98795D82075B/data/Containers/Data/Application/FC4AE0BB-6400-4A91-B93A-54C40C973676

/**

*沙盒下三個文件夾

*1.Documents存儲用戶數據

*2.Library下方兩個文件夾Caches:緩存文件夾。Preference:偏好設置文件夾nsuserdefault (.plist文件反域名形式文件名字應用的唯一標識com.Chen.SaveData)

*3.tmp文件夾的作用存儲臨時數據

*/

//數據持久化存儲:

//1.屬性列表的方式,plist文件輕量級的數據涉及到的主要的類NSUserDefaults

NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];

//寫文件可以直接寫入的數據:字典,數組,字符串,number(基本數據類型),二進制數據(最基本數據類型:NSData) ? (這些類都實現NSCoding協議(2個))

//BOOL

[ud setBool:YES forKey:@"bool"];

//讀取(存儲的是什么類型,讀取的就是什么類型)

BOOL isYes = [[ud objectForKey:@"bool"] boolValue];

//字典

NSDictionary *dic = @{@"111":@"one",@"222":@"two"};

[ud setObject:dic forKey:@"Dic"];

NSDictionary * D = [ud objectForKey:@"Dic"];

//數組

NSArray *ary = @[@"123",@"456",@"789"];

[ud setObject:ary forKey:@"array"];

NSArray *ar = [ud objectForKey:@"array"];

//基本數據類型

floata = 10;

[ud setObject:[NSNumber numberWithFloat:a] forKey:@"float"];

floatb = [[ud objectForKey:@"float"] floatValue];

NSLog(@"%f",b);

//二進制

NSString *str1 =@"sad";

NSData *data = [str1 dataUsingEncoding:NSUTF8StringEncoding];

[ud setObject:dataforKey:@"data"];

NSData *dat = [ud objectForKey:@"data"];

//把二進制轉換為字符串

NSString* str11 = [[NSString alloc] initWithData:dat encoding:NSUTF8StringEncoding];

NSLog(@"%@",str11);

//同步

[ud synchronize];?

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 前言iOS本地緩存數據方式有五種:1.直接寫文件方式:可以存儲的對象有NSString、NSArray、NSDic...
    LZM輪回閱讀 738評論 0 2
  • 轉載自:http://www.mamicode.com/info-detail-957988.html 1、iOS...
    哆啦_閱讀 2,336評論 0 2
  • IOS數據持久化 數據的持久化,就是將數據保存到硬盤中,使得在應用程序或機器重啟后可以繼續訪問之前保存的數據。在i...
    koula閱讀 1,182評論 0 19
  • 前言: 在程序開發中,數據層永遠是程序的核心結構之一。對這些數據的加工處理是代碼中能體現技術水平的一大模塊,比如數...
    麥穗0615閱讀 1,477評論 3 22
  • 在程序開發中,數據層永遠是程序的核心結構之一。我們將現實事物進行抽象,使之變成一個個數據。對這些數據的加工處理是代...
    帥不過oneS閱讀 640評論 0 1