转载自: http://blog.csdn.net/chaoyuan899/article/details/11901895
preference(偏好设置)是数据持久化的几个方法中最简单的一个,常用于保存少量数据
代码如下:
- //
- // ViewController.m
- // preference(利用偏好设置保存数据)
- //
- // Created by Rio.King on 13-9-22.
- // Copyright (c) 2013年 Rio.King. All rights reserved.
- //
- #import "ViewController.h"
- @interface ViewController ()
- @end
- @implementation ViewController
- - (void)viewDidLoad
- {
- [super viewDidLoad];
- [self save];
- [self read];
- }
- #pragma mark 保存
- -(void)save{
- NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
- [defaults setObject:@"chaoyuan" forKey:@"username"];
- [defaults setFloat:18.6 forKey:@"text_size"];
- [defaults setBool:YES forKey:@"auto_login"];
- //强制数据保存
- [defaults synchronize];
- }
- #pragma mark 读取
- -(void)read{
- NSUserDefaults *defualts = [NSUserDefaults standardUserDefaults];
- NSString *username = [defualts objectForKey:@"username"];
- float textsize = [defualts floatForKey:@"text_size"];
- BOOL autoLogin = [defualts boolForKey:@"auto_login"];
- NSLog(@"username = %@",username);
- NSLog(@"textsize = %0.1f",textsize);
- NSLog(@"autoLogin = %i",autoLogin);
- }
- @end
//
// ViewController.m
// preference(利用偏好设置保存数据)
//
// Created by Rio.King on 13-9-22.
// Copyright (c) 2013年 Rio.King. All rights reserved.
//
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
[self save];
[self read];
}
#pragma mark 保存
-(void)save{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:@"chaoyuan" forKey:@"username"];
[defaults setFloat:18.6 forKey:@"text_size"];
[defaults setBool:YES forKey:@"auto_login"];
//强制数据保存
[defaults synchronize];
}
#pragma mark 读取
-(void)read{
NSUserDefaults *defualts = [NSUserDefaults standardUserDefaults];
NSString *username = [defualts objectForKey:@"username"];
float textsize = [defualts floatForKey:@"text_size"];
BOOL autoLogin = [defualts boolForKey:@"auto_login"];
NSLog(@"username = %@",username);
NSLog(@"textsize = %0.1f",textsize);
NSLog(@"autoLogin = %i",autoLogin);
}
@end
运行结果如下:
2013-09-22 16:30:42.183 preference(利用偏好设置保存数据)[745:c07] username = chaoyuan
2013-09-22 16:30:42.185 preference(利用偏好设置保存数据)[745:c07] textsize = 18.6
2013-09-22 16:30:42.189 preference(利用偏好设置保存数据)[745:c07] autoLogin = 1
也可以到/Users/Rio/Library/Application Support/iPhone Simulator/6.1/Applications/952F88F8-0A15-4722-903D-9D16D291CA1C/Library/Preference/ 目录下查看生成的.plist文件(Rio是自己的名字,952F88F8-0A15-4722-903D-9D16D291CA1C根据个人会有所不同,一般通过生成时间就可以找到该项目),如我这边生成的文件如下: