1。
nsstring *path = [[nsbundle mainbundle] pathforresource:@
"檔名"
oftype:@
"plist"
];
// 檔案資料型別是array
nsarray *array=[nsarray arraywithcontentsoffile:path];
//檔案資料型別是*dictionary
nsdictionary *dictionary = [nsdictionary dictionarywithcontentsoffile:path];
//1. 建立乙個plist檔案
nsarray *paths=nssearchpathfordirectoriesindomains(nsdocumentdirectory,nsuserdomainmask,yes);
nsstring *path=[paths objectatindex:0];
nslog(@"path = %@",path);
nsfilemanager* fm = [nsfilemanager defaultmanager];
[fm createfileatpath:filename contents:nil attributes:nil];
//nsdictionary* dic = [nsdictionary dictionarywithcontentsoffile:plistpath];
//建立乙個dic,寫到plist檔案裡
nsdictionary* dic = [nsdictionary dictionarywithobjectsandkeys:@"sina",@"1",@"163",@"2",nil];
[dic writetofile:filename atomically:yes];
//讀檔案
nsdictionary* dic2 = [nsdictionary dictionarywithcontentsoffile:filename];
nslog(@"dic is:%@",dic2);
建立乙個user defaults方法有多個,最簡單得快速建立方法:
nsuserdefaults *accountdefaults = [nsuserdefaults standarduserdefaults];
新增資料到 user defaults:
[accountdefaults setobject:namefield.text forkey:userdefaultnamekey];
也可以新增基本資料型別int, float, bool等,有相應得方法
[accountdefaults setbool:yes forkey:userdefaultboolkey];
從user defaults中獲取資料:
[accountdefaults objectforkey:ncuserdefaultnamekey]
[accountdefaults boolforkey: userdefaultboolkey];
要點:nsuserdefaults非常好用,並不需要使用者在程式中設定nsuserdefaults的全域性變數,需要在**使用nsuserdefaults的資料,那麼就在**建立乙個nsuserdefaults物件,然後進行讀或者寫操作。
針對同乙個關鍵字對應的物件或者資料,可以對它進行重寫,重寫之後關鍵字就對應新的物件或者資料,舊的物件或者資料會被自動清理。
3 關於nsuserdefaults儲存不了資料的問題
如果你按home鍵終止你的應用(真機或者模擬器上),你的值是會被儲存的。
[[nsuserdefaults standarduserdefaults] synchronize];
如果你在xcode中,終止你的應用(在模擬器或者真機上),你的值有時候(terminate the process before they've been persisted(不知道是個什麼鬼))不會被儲存。但是
你可以使用以下**強制儲存:
[[nsuserdefaults standarduserdefaults] synchronize];
iOS本地資料儲存的方式
1 nskeyedarchiver 歸檔 採用歸檔的形式來儲存資料,可以實現對複雜物件的資料儲存,該資料物件需要遵守nscoding協議,並且該物件對應的類必須提供encodewithcoder 和initwithcoder 方法.2 nsuserdefaults 用來儲存應用程式設定和屬性 使用者...
iOS本地資料儲存的方式
ios本地資料儲存有哪幾種方式?1.複雜物件寫入本地nskeyedarchiver 歸檔 採用歸檔的形式來儲存資料,該物件資料需要遵守nscoding協議,並且該物件對應的類必須提供encodewithcoder 和initwithcoder 方法。現在建立乙個boss類,並且.h遵守nscodin...
iOS的本地化資料儲存
l xml屬性列表 plist 歸檔l preference 偏好設定 l nskeyedarchiver歸檔l sqlite3資料庫 lcore data l realm 一 xml 屬性列表 plist 歸檔1,獲取沙盒根路徑 nsstring home nshomedirectory 2,獲取...