NSUserDefaults与NSDictinary?
应用通过NSUserDefaults用键值对的方式来读取和保存偏好设置数据,与通过键从NSDictionary对象中获取数据一样,不同之处在于NSUserDefaults中的数据会被持久保存到文件系统中,而不是存储到内存中的对象实例中。
// 偏好设置是专门用来保存应用程序的配置信息的, 一般情况不要再偏好设置中保存其他数据
// 如果利用系统的偏好设置来存储数据, 默认就是存储在Preferences文件夹下面的
// 偏好设置会将所有的数据保存到同一个文件中
一。保存数据
// 获取NSUserDefaults对象
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
// 保存数据(如果设置数据之后没有同步, 会在将来某一时间点自动将数据保存到Preferences文件夹下面)
[defaults setObject:@"lnj" forKey:@"name"];
[defaults setObject:@"man" forKey:@"gender"];
[defaults setInteger:13 forKey:@"age"];
[defaults setDouble:10.1 forKey:@"height"];
// 让NSUserDefaults立刻保存数据
[defaults synchronize];
二。读取数据
// 1.获取NSUserDefaults
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
// 2.通过NSUserDefaults获取保存的数据
NSString *name = [defaults objectForKey:@"name"];
int age = [defaults integerForKey:@"age"];
NSLog(@"%@", name);
NSLog(@"%d", age);