IOS中NSUserDefaults的用法

与Android的SharedPreference相仿,iOS提供了NSUserDefaults实现轻量级本地数据存储。

1、NSUserDefaults支持的数据格式有:NSNumber(Integer、Float、Double),NSString,NSDate,NSArray,NSDictionary,BOOL类型。

2、NSUserDefaults是单例的,同时也是线程安全的。

3、针对同一个关键字对应的对象或者数据,可以对它进行重写,旧的对象或者数据会被新的替换;

4、NSUserDefautls将数据存储在应用程序内置的一个plist文件里,这个可以根据路径看到。

比如模拟器中程序沙盒位置:/UsersLibrary/Application Support/iPhoneSimulator/6.0/Applicati*****/2935247-54SR-8324DFGDFGSD4/,这个下面有/Library/Prefereces,里面有个plist文件,存储的就是你的userDefaults。想要删掉的话,用removeObjectForKey或者删掉沙盒,也就是你的应用程序然后重新安装。

使用示例:
// 最简单得快速创建方法:
NSUserDefaults *accountDefaults = [NSUserDefaults standardUserDefaults];

// 添加数据到 user defaults:
[accountDefaults setObject:@"Tom" forKey:@"name"];

// 也可以添加基本数据类型int, float, bool等,有相应得方法
 [accountDefaults setBool:YES forKey:UserDefaultBoolKey];
// 最后千万不能忘记强制写入
[accountDefaults synchronize];

// 从user defaults中获取数据:
[accountDefaults objectForKey:@"name"]  
[accountDefaults boolForKey: UserDefaultBoolKey];


你可能感兴趣的:(IOS中NSUserDefaults的用法)