본문 바로가기

iOS개발팁

NSDate와 NSDateFormatter 사용하기 04

지역에 맞게 날짜 데이터를 출력해 보겠습니다. 우선 현재 사용하고 있는 아이폰이 어떤 지역 설정을 사용하는지 알아보겠습니다. 아래 코드를 보시죠 :)
//아이폰이 현재 사용하고 있는 지역 설정 표시
{
        NSLocale *locale = [NSLocale currentLocale];
        NSLog(@"Current Locale : %@", [locale localeIdentifier]);
}
//출력결과 (시뮬레이터)
//Current Locale : en_US
위 결과를 보시면 현재 지역이 미국으로 설정되어 있습니다. 이를 한국으로 바꾸면 월 이름과 요일 이름이 한글로 출력됩니다. 아래 코드를 보시죠 :)
//지역 설정을 한국으로 변경하기
{
        NSDate *today = [NSDate date];
       
        NSDateFormatter *dateFormat = [[[NSDateFormatter alloc] init] autorelease];
        [dateFormat setDateFormat:@"EEEE MMMM d, YYYY"];
        [dateFormat setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"ko_KR"] autorelease]];
       
        NSString *dateString = [dateFormat stringFromDate:today];
              
        NSLog(@"Today : %@", dateString);
}
//출력결과
//Today : 수요일 10월 6, 2010
NSLocale을 "ko_KR"로 생성하여 NSFormatter에 설정해 주면 됩니다. 그럼 일본어로 표시해 볼까요?
//지역 설정을 일본으로 변경하기
{
        NSDate *today = [NSDate date];
       
        NSDateFormatter *dateFormat = [[[NSDateFormatter alloc] init] autorelease];
        [dateFormat setDateFormat:@"EEEE MMMM d, YYYY"];
        [dateFormat setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"ja_JP"] autorelease]];
       
        NSString *dateString = [dateFormat stringFromDate:today];      
       
        NSLog(@"Today : %@", dateString);
}
//출력결과
//Today : 水曜日 10月 6, 2010
지금까지 NSDate와 NSDateFormatter에 대해서 알아보았습니다. 해피코딩하세요!