2012-06-12 4 views
1

데이터베이스와 통신하기 위해 구축 한 비공개 PHP API를 사용하는 iPad 앱에서 작업하고 있습니다. 이 API는 세 가지 날짜, 시작 시간, 종료 시간 및 현재 시간을 전송해야합니다.로케일 NSDate 문제

현재 시간이 날짜 범위 내에 있는지 테스트하고 싶습니다. 그래서 (16시 50분 0초 같은) 시간을 가져다 NSDates로 변환 :

NSDateFormatter *former = [[NSDateformatter alloc] init]; 
[former setDateFormat:@"HH:mm:ss"]; 
[former setLocale:[NSLocale currentLocale]]; 

NSDate *fromDate = [former dateFromString:@"10:15:00"]; 
NSDate *nowDate = [former dateFromString:@"13:25:00"]; 
NSDate *toDate = [former dateFromString:@"16:30:00"]; 

내가 지금은 로케일이 잘못된 것을 볼 NSLog(@"\n%@\n%@\n%@", fromDate, nowDate, toDate);를 사용하여 날짜를 기록하고있어합니다.

NSDateFormatter는 로캘 설정을 무시하기 때문에 나타납니다. 또한 올바른 (내 경우에는 "DE_DE" ")입니다 currentLocales 식별자. 로케일은 0000 남아 기록.

나는이 문제를 해결할 수 있습니까? 감사합니다, 종류와 관련하여, 줄리안

답변

2

좋아 나는 이전의 대답을 삭제 한 다음을 시도하십시오

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
NSTimeZone *zone = [NSTimeZone localTimeZone]; 
[formatter setTimeZone:zone]; 
[formatter setDateFormat:@"HH:mm:ss"]; 

NSDate *date = [formatter dateFromString:@"10:15:00"]; 

NSLog(@"Time %@",[formatter stringFromDate:date]); 
+0

안녕하세요, 감사하세요'date'가 잘못된 시간을 가지고,하지만. 0000 남아 있기 때문에. 올바른 로케일을 가질 수있는 NSDate 것 같다 이상한 행동이지만 확실한 해결 방법입니다. 감사합니다. –

+1

도움이 되니 기쁩니다! – Breakpoint