본문 바로가기

Programming/iPhone

NSUserDefaults 사용법 - Data Save and Read


아이폰 프로그래밍을 하다보면 빈번히 사용하게 되는것 중의 하나가 NSUserDefaults 일 것입니다.
NSUserDefaults 의 용도는 간단하게 전역 데이터 저장소라고 생각하시면 됩니다.
데이터의 종류는 int / bool / url / object 형으로 거의 모든 데이터를 저장할 수 있습니다.
데이터의 보존 기한은 앱을 삭제하기 전까지는 쭈욱~ 유지됩니다.

그럼 NSUserDefaults 에 데이터를 저장하고, 저장한 데이터를 읽어오는 방법에 대해서 설명하도록 하겠습니다.
(참고로 NSUserDefaults 에 데이터를 저장하기 위해서는 [data, key]의 쌍으로 저장을 해야합니다. key값은 NSString형의 문자열입니다.)



1. NSUserDefaults 에 데이터 저장

 (1) int 값 저장
[[NSUserDefaults standardUserDefaults] setInteger:<int value> forKey:<key value>];


 (2) bool 값 저장
[[NSUserDefaults standardUserDefaults] setBool:<bool value> forKey:<key value>];


 (3) object 저장
[[NSUserDefaults standardUserDefaults] setObject:<object> forKey:<key value>];

 

(4) 저장한 데이터 동기화(적용) 

[[NSUserDefaults standardUserDefaults] synchronize];


 


2. NSUserDefaults 에 저장된 데이터 읽기

 (1) int 값 읽기

int value = [[NSUserDefaults standardUserDefaults] integerForKey:<key value>];


 (2) bool 값 읽기
bool value = [[NSUserDefaults standardUserDefaults] boolForKey:<key value>];


 (3) NSString 값 읽기 (NSString 값 저장은 NSString 자체가 object이기 때문에 setObject를 이용하면 됩니다.)
NSString *value = [[NSUserDefaults standardUserDefaults] stringForKey:<key value>];


 (4) object 읽기
id value = [[NSUserDefaults standardUserDefaults] objectForKey:<key value>];