2010-03-05 6 views
0

2 월 26 일 21:34:00이 문자열에 적합한 NSDateFormatter 형식은 무엇입니까?

MMMM, yyyy H : m : s는 정확해야하지만 NSDate dateFromString은 null을 반환합니다.

+0

이 더 많은 말을하는 코드를 볼 필요가있을 것이다 :이 작업의 코드 조각 등 예 : 월/요일 이름에 영향을 미치는, en_US가 아닌 다른 것을 할 수 있기 때문에 systemLocale은 좋지 않다. – cobbal

+0

해당 형식 문자열이 올바르게 작동합니다. 포맷터와 전달하는 날짜가 일치하지 않는지 확인하십시오. – nall

+0

나는이 방법으로 로케일을 설정했다. - (NSDate *) getDateFromString : (NSString *) dtStr { \t NSDateFormatter * inputFormatter = [[NSDateFormatter alloc] init]; \t [inputFormatter setDateFormat : @ "MMMM, dd yyyy HH : mm : ss"]; \t NSDate * formatterDate = [inputFormatter dateFromString : dtStr]; \t [inputFormatter autorelease]; \t return formatterDate; } 이제 꺼내어 작동합니다. –

답변

0

포맷터를 en_US 로켈로 명시 적으로 설정하기 전까지 한 번 이런 종류의 문제가 발생했습니다. 그것은 나를 위해 작동

NSDateFormatter *fmt = [[[NSDateFormatter alloc] init] autorelease];  
[fmt setDateFormat:@"eee MMM dd HH:mm:ss Z yyyy"]; 
[fmt setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]]; 
NSDate *formattedDate = [fmt dateFromString:someStringContainingDate]; 
0

휴대 전화는 어떤 지역으로 설정되어 있습니까? en_US가 아닌 경우 setLocale을 사용하여 날짜 포맷터를 설정해야합니다.

+0

[inputFormatter setLocale : [NSLocale systemLocale]]; 나는 이것이 en_US라고 믿는다. –

관련 문제