最近在做项目,用到这个,发现现在不用在[[NSUserDefaults standardUserDefaults]synchronize ] ;//同步到plist文件中了
顺道说一下xcode6中,NSUserDefaults的位置据说变成下边这个了:
在Xcode6中,程序对使⽤用NSUserDefault⽅方式创建的plist⽂文件的位置进⾏行了更换,具体路径为:/Users/username/Library/Developer/CoreSimulator/Devices/模拟器UDID/data/Library,Preferences⽂文件夹下。
但是:
经过验证,还是在原来的位置上
只不过,在生成plist的时候,最上边的文件夹下(即是/Users/username/Library/Developer/CoreSimulator/Devices/模拟器UDID/data/Library,Preferences)也会生成一个plist文件。但这个plist的生成,是需要[[NSUserDefaults standardUserDefaults]synchronize ] 的,否则没有。:/Users/username/Library/Developer/CoreSimulator/Devices/模拟器UDID/data/Applications/C9588981-3D82-49BC-92B8-F5BA72185629/Library,Preferences
下边是一个简单用法的示例:
NSUserDefaults *mySettingData = [NSUserDefaults standardUserDefaults]; 创建NSUserDefaults对象之后即可往里面添加数据,它支持的数据类型有NSString、 NSNumber、NSDate、 NSArray、NSDictionary、BOOL、NSInteger、NSFloat等系统定义的数据类型,如果要存放自定义的对象(如自定义的类对象),则必须将其转换成NSData存储: NSArray *arr = [[NSArray alloc] initWithObjects:@"arr1", @"arr2", nil] [mySettingData setObject:arr forKey:@"arrItem"]; [mySettingData setObject:@"admin" forKey:@"user_name"]; [mySettingData setBOOL:@YES forKey:@"auto_login"]; [mySettingData setInteger:1 forKey:@"count"]; [mySettingData synchronize];//同步到plist文件中
有错误还请指出