1、userDefault的存储路径:
项目沙盒的Library/Preferences/下面
2、userDefault存在形式
userDefault作为项目的内置文件以plist的形式存在
3、userDefault的使用:
1)写入:
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
[userDefault setObject:@“北京” forKey:LASTCITY];
[userDefault synchronize];--(注意synchronize,它的存在是把userDefault改变的值写入磁盘中)
2)读取:
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
NSString *lastCity = [userDefault objectForKey:LASTCITY];
4、需要注意的地方:
NSUserDefaults是定时把缓存中的数据写入磁盘的,而不是即时写入,为了防止在写完NSUserDefaults后程序退出导致的数据丢失,可以在写入数据后使用synchronize强制立即将数据写入磁盘:
5、userDefault过大会影响启动时间:
1)userDefault过大对启动时间的影响是指数性的,所以值得关注。
2)解决:每次操作userDefault,都把userDefault中不相干的key清理。