日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全I(xiàn)T社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > 互聯(lián)網(wǎng) > iOS 數(shù)據(jù)持久化之使用NSUserDefaults存儲(chǔ)數(shù)據(jù)

iOS 數(shù)據(jù)持久化之使用NSUserDefaults存儲(chǔ)數(shù)據(jù)

來源:程序員人生   發(fā)布時(shí)間:2014-10-03 08:00:00 閱讀次數(shù):1947次

1.用處:NSUserDefaults用來存儲(chǔ)類似用戶的配置、程序設(shè)置信息等這些的數(shù)據(jù)

iOS下可以使用NSUserDefault、NSKeyedArchiver、sqlite、CoreData幾種常用的方式來存儲(chǔ)數(shù)據(jù),其中NSUserDefaults用來存儲(chǔ)類似用戶的配置等這些的數(shù)據(jù),后兩者用戶存儲(chǔ)大批量和比較復(fù)雜的數(shù)據(jù)。

NSUserDefault 基本上支持所有的原生數(shù)據(jù)類型NSString、 NSNumber、NSDate、 NSArray、NSDictionary、BOOL、NSInteger、NSFloat等等。如果要存放自定義的對象(如自定義的類對象),則必須將其轉(zhuǎn)換成NSData存儲(chǔ)。

2.用法:

NSUserDefault的使用比較簡單:

A類頁面:

 NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

    [userDefault setObject:@“北京” forKey:LASTCITY];

    [userDefault synchronize];

B類頁面:

    NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

    NSString *lastCity = [userDefault objectForKey:LASTCITY];

3.細(xì)節(jié)用法:

如果要存放自定義的對象(如自定義的類對象),則必須將其轉(zhuǎn)換成NSData存儲(chǔ):

[cpp] view plaincopy
  1. NSArray *arr = [[NSArray alloc] initWithObjects:@"arr1", @"arr2", nil]  
  2. [mySettingData setObject:arr forKey:@"arrItem"];  
  3. [mySettingData setObject:@"admin" forKey:@"user_name"];  
  4. [mySettingData setBOOL:@YES forKey:@"auto_login"];  
  5. [mySettingData setInteger:1 forKey:@"count"];  

往NSUserDefaults添加數(shù)據(jù)后,它們就變成了全局的變量,App中即可讀寫NSUserDefault中的數(shù)據(jù):

[cpp] view plaincopy
  1. NSUserDefaults *mySettingDataR = [NSUserDefaults standardUserDefaults];  
  2. NSLog(@"arrItem=%@", [mySettingDataR objectForKey:@"arrItem"]);  
  3. NSLog(@"user_name=%@", [mySettingDataR objectForKey:@"user_name"]);  
  4. NSLog(@"count=%d", [mySettingDataR integerForKey:@"count"]);  

如果想刪除某個(gè)數(shù)據(jù)項(xiàng),可以使用removeObjectForKey刪除數(shù)據(jù):

[cpp] view plaincopy
  1. [mySettingData removeObjectForKey:@"arrItem"];  

需要注意的是,NSUserDefaults是定時(shí)把緩存中的數(shù)據(jù)寫入磁盤的,而不是即時(shí)寫入,為了防止在寫完NSUserDefaults后程序退出導(dǎo)致的數(shù)據(jù)丟失,可以在寫入數(shù)據(jù)后使用synchronize強(qiáng)制立即將數(shù)據(jù)寫入磁盤:

[cpp] view plaincopy
  1. [mySettingData synchronize];  
運(yùn)行上面的語句后,NSUserDefaults中的數(shù)據(jù)即被寫入到.plist文件中,如果是在模擬器上運(yùn)行程序,可以在Mac的/Users/YOUR-USERNAME/Library/Application Support/iPhone Simulator/4.1/Applications/YOUR-APP-DIR/Library/Prefereces目錄下面找到一個(gè)文件名為YOUR-Bundle_Identifier.plist的plist文件,用Xcode打開該文件,可以看到剛才寫入的數(shù)據(jù)。

 4、針對同一個(gè)關(guān)鍵字對應(yīng)的對象或者數(shù)據(jù),可以對它進(jìn)行重寫,重寫之后關(guān)鍵字就對應(yīng)新的對象或者數(shù)據(jù),舊的對象或者數(shù)據(jù)會(huì)被自動(dòng)清理。

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 一区在线免费观看 | 亚洲精品电影网在线观看 | 欧美最猛性xxxx | 青青av| 最新日韩在线 | 天天干天天爱天天爽 | 99热在线播放| 天堂蜜桃一区二区三区 | 久久久久久久久久国产精品 | 亚洲日本视频 | 日本精品久久 | 91精品久久久久久 | 成人爽a毛片免费啪啪动漫 久久久国产一区二区三区 国产69久久精品成人看 | 成人免费观看在线 | 麻豆b2b | 毛片天堂| 国产精品视频久久久 | 国产日韩欧美在线 | 午夜一区二区三区 | 久久久久亚洲精品国产 | 成人精品国产一区二区4080 | 色姑娘桃花网 | 亚洲色图色小说 | 国产一区二区三区在线电影 | 日韩免费网站 | 日韩激情网 | 亚洲精品视频自拍 | 成人欧美一区二区三区视频网页 | av大全在线免费观看 | 国产一区二区电影 | 色又黄又爽18件免费网站 | 久久久国产精品 | av片在线看 | 成人黄色片在线观看 | 欧美三级一区 | 午夜免费一区二区 | 艹久久| 精品日韩在线观看 | 秋霞色 | 69视频播放| 日韩精品视频在线播放 |