NSDateFormatter를 사용하여 문자열을 날짜로 변환하고 있습니다. 그러나 반환 된 날짜는 nil입니다. 문제가 발생한 것은 하드 코드 된 문자열뿐입니다. stringFromDate :를 사용하고이 NSString을 NSDate로 변환하면 괜찮습니다.NSDateFormatter가 문자열을 날짜로 변환하지 않습니다.
하드 코딩 날짜 :
2012-30-22T10 : 30 : 19 + 0530
dateFromString :
2012-04-27T10 : 20 : 43 + 0530
날짜 형식.
코드 :
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZ"];
NSString *string = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"string %@", string);
로그 : ~ 문자열 2012-04-27T10 : 20 : + 0530 43
NSDate *date = [dateFormatter dateFromString:string];
NSLog(@"date %@", date);
로그 : ~ 날짜 2012-04-27 4시 50분 : 43 +0000
지금까지 그렇게 좋았습니다. 내 문자열에서 날짜가 반환됩니다. 그러나 나는 나 자신을 입력 한 날짜 ...
NSString *string2 = @"2012-30-22T10:30:19+0530";
NSLog(@"string2 %@", string2);
로그 사용하려고하면 ~ 날짜 2012-04-27 4시 50분 43초 0000
//Here comes the problem.
NSDate *date2 = [dateFormatter dateFromString:string2];
NSLog(@"date 2 %@", date2);
로그를 : ~ 날짜 2 (null)
다른 날짜가 아닌 경우이 날짜가 null 인 이유는 무엇입니까?
은 한 달에 30 개가 입력 된 문자열에 오타가 있다는 것을 나타 냅니까? 그것이 30 번째 달을 모르기 때문에 그것을 망쳐 놓고 있을지도 모른다. –
나는 그것이 있어야한다고 생각한다. 나는 나 자신을 발견하지 못했다고 나는 믿을 수 없다. 실제로 나는이 문자열을 수동으로 입력하지 않았습니다. 서버에서 가져옵니다. 나는 서버가 망가 졌다고 생각한다. 답으로 게시하고 올바른 것으로 표시하겠습니다. – SEG
감사합니다. btw! :-) – SEG