應(yīng)用沙盒(非常基礎(chǔ)篇--)

IOS中數(shù)據(jù)存儲(chǔ)的常用方式:

XML屬性列表(plist)歸檔

Preference(偏好設(shè)置)

NSKeyedArchiver 歸檔 (NSCoding)

--------------------

SQLite3 ? ? ?

Core Data


每個(gè)ios應(yīng)用都有自己的應(yīng)用沙盒(應(yīng)用沙盒文件系統(tǒng)目錄),與其他文件隔離.應(yīng)用必須待在自己的沙盒里.其他應(yīng)用不能訪問(wèn).

在Xcode中獲取沙盒的根目錄置:nsLog(@"%@",NSSHomeDirectory()).

沙盒的結(jié)構(gòu)分析:

Documents:保存應(yīng)用運(yùn)行時(shí)生成的需要持久化的數(shù)據(jù).游戲的存檔可以保存在里面.蘋果規(guī)定:里面不允許保存網(wǎng)上獲取的數(shù)據(jù).上架會(huì)被打回

tmp:保存應(yīng)用運(yùn)行時(shí)所需的臨時(shí)數(shù)據(jù),使用完畢后再將相應(yīng)的文件從該目錄刪除.系統(tǒng)會(huì)不定時(shí)的刪除.ITunes不會(huì)備份

Library/Caches:保存應(yīng)用運(yùn)行時(shí)生成的需要持久化的數(shù)據(jù),iTunes不會(huì)備份,一般存儲(chǔ)體積大,不需要備份的非重要數(shù)據(jù).

Library/Preference :保存應(yīng)用的所有偏好設(shè)置,iOS的Settings(設(shè)置)應(yīng)用會(huì)在該目錄中查找應(yīng)用的設(shè)置信息.iTunes會(huì)備份

//不同步的可以放大文件


獲取應(yīng)用沙盒

獲取沙盒指定的目錄:NSString * path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,NO)[0] ? 第一個(gè)參數(shù) :要搜索的那個(gè)文件夾,第二個(gè)參數(shù): 在那個(gè)范圍內(nèi)進(jìn)行搜索,第三個(gè)參數(shù)bool類型,要不要展開(kāi)目錄. 用字符串接收一下

怎么把(字典數(shù)組)寫入沙盒:

Plist(常用)寫入:讀出的時(shí)候要不是數(shù)組,就是字典

新建一個(gè)字符串獲取要存儲(chǔ)的位;置 ?上同

拼接文件名(文件的全路徑)用:stringByAppendingPathComponent:@".plist"

array writeTofile:(nssting)拼接的全路徑跟文件名atomically(BOOL)比如手機(jī)在保存的時(shí)候沒(méi)電,生成不生成文件夾

讀取plist文件:

[NSArray array(dictionary)WithContentsofFile:拼接的文件名]用一個(gè)數(shù)組接收一下 ?

---------------------------------------------------

偏好設(shè)置的保存:

例:登陸賬號(hào)密碼,....

NSSUserDefaults *def = [NSSUserDefaults ? standardUserDefaults] 獲取偏好設(shè)置 返回值是NSSUserDefaults ?

(1)[def setobject :@"存入額內(nèi)容字符串name" forKey :@"name"];

(2)[def setInteger:20(number)類型 forKey:@"age"];

(3)什么類型的就在set后面跟上就行了.

[4]簡(jiǎn)寫:[[NSSUserDefaults ?standardUserDefaults]setobject :@"存入額內(nèi)容字符串name" forKey :@"name"];

[def synchronize]在iOS7之前 調(diào)用是立馬寫入,現(xiàn)在是自動(dòng)寫入 ?沒(méi)用了

寫入的默認(rèn)本質(zhì)是plist形式保存的,是字典形式.

不用關(guān)心路徑和文件名.

讀取:

怎么存的,就怎么取 ? 例

nsstring * str = [def objectForKey:@"name"];

-----------------------------------------

歸檔:在plist中不能儲(chǔ)存自定義的對(duì)象(基本使用)

NSKeyedArchiver archiveRootobject:(需要保存的對(duì)象) ?toFile:(保存的路徑,(拼接一下.)一般都是保存在沙盒中,)底層會(huì)調(diào)用encodeWithCoder方法,問(wèn)下要保存定義對(duì)象的那種屬性.

要保存的對(duì)象必須遵守<NSCoding>協(xié)議實(shí)現(xiàn)它的encodeWithCoder方法,例[encode (數(shù)據(jù)類型)object:self.name ?Forkey:"name"];

讀取

底層會(huì)調(diào)用initWithCoder方法,問(wèn)你要讀取對(duì)象的那些屬性

并且對(duì)象需要實(shí)現(xiàn)-(instancetype)initWithCoder方法,在解析文件的時(shí)候調(diào)用.

instancetype是初始化方法,方法內(nèi)部重寫初始化方法,取出他們的Key ?decode保存時(shí)的屬性類型 :取出的屬性 ?并賦值給self.屬性 ? 你要取出的屬性 ?

歸檔注意點(diǎn):

遵守協(xié)議<NSCoding>

歸檔過(guò)程中 保存要實(shí)現(xiàn)encodeWithCoder方法

取出的時(shí)候要實(shí)現(xiàn)initWithCoder方法

如果對(duì)象中還有對(duì)象的話也需要做歸檔工作

-------------------------------------------

-(void)awakeFromNib

{}這個(gè)方法是在XIB或者sb加載"完畢"時(shí)調(diào)用的方法


第一次開(kāi)始做筆記 ,原來(lái)以為理解就夠了,誰(shuí)知道用的時(shí)候全忘了-..-谷异,一個(gè)ios小白得筆記悦穿。希望大家能適應(yīng)我做筆記得格式羹膳。純手打。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末肠套,一起剝皮案震驚了整個(gè)濱河市舰涌,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌你稚,老刑警劉巖瓷耙,帶你破解...
    沈念sama閱讀 216,651評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異刁赖,居然都是意外死亡搁痛,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,468評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門宇弛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)鸡典,“玉大人,你說(shuō)我怎么就攤上這事枪芒〕箍觯” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,931評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵舅踪,是天一觀的道長(zhǎng)纽甘。 經(jīng)常有香客問(wèn)我,道長(zhǎng)抽碌,這世上最難降的妖魔是什么悍赢? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,218評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上左权,老公的妹妹穿的比我還像新娘瞒斩。我一直安慰自己,他們只是感情好涮总,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,234評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著祷舀,像睡著了一般瀑梗。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上裳扯,一...
    開(kāi)封第一講書(shū)人閱讀 51,198評(píng)論 1 299
  • 那天抛丽,我揣著相機(jī)與錄音,去河邊找鬼饰豺。 笑死亿鲜,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的冤吨。 我是一名探鬼主播蒿柳,決...
    沈念sama閱讀 40,084評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼漩蟆!你這毒婦竟也來(lái)了垒探?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,926評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤怠李,失蹤者是張志新(化名)和其女友劉穎圾叼,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體捺癞,經(jīng)...
    沈念sama閱讀 45,341評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡夷蚊,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,563評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了髓介。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惕鼓。...
    茶點(diǎn)故事閱讀 39,731評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖唐础,靈堂內(nèi)的尸體忽然破棺而出呜笑,到底是詐尸還是另有隱情,我是刑警寧澤彻犁,帶...
    沈念sama閱讀 35,430評(píng)論 5 343
  • 正文 年R本政府宣布叫胁,位于F島的核電站,受9級(jí)特大地震影響汞幢,放射性物質(zhì)發(fā)生泄漏驼鹅。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,036評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望输钩。 院中可真熱鬧豺型,春花似錦、人聲如沸买乃。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,676評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)剪验。三九已至肴焊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間功戚,已是汗流浹背娶眷。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,829評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留啸臀,地道東北人届宠。 一個(gè)月前我還...
    沈念sama閱讀 47,743評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像乘粒,于是被迫代替她去往敵國(guó)和親豌注。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,629評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容