NSString
로 NSDate
변환 돌아갑니다 null
.
원래 문자열은 " 2013-07-16T18 : 42 : 56 + 02 : 00 "을 출력하지만로 변환하려고하면 NSDate
"null"을 반환합니다.
내 코드는 다음과 같습니다.
// original string
NSString *str = [timeStamp objectAtIndex:indexPath.row];
// convert to date
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
//[dateFormat setDateFormat:@"YYYY-MM-dd'T'HH:mm:ss'+11:00'"];
[dateFormat setDateFormat:@"YYYY-MM-dd'T'HH:mm:ssZZZ"]; // updated from Stavash's post below. Still null is outputted for the date though
[dateFormat setTimeZone:[NSTimeZone timeZoneWithName:@"Australia/Melbourne"]];
NSDate *dte = [dateFormat dateFromString:str];
cell.timeStampLabel.text = [NSString stringWithFormat:@"%@",dte ];
포맷에 +11 : 00을 하드 코딩 한 이유는 무엇입니까? 나는 이것이 당신을 위해 일할 것이라고 생각합니다 (iOS6.0 이상에서) :
[dateFormat setDateFormat:@"yyyy-MM-dd\'T\'HH:mm:ssZZZZZ"];
iOS5.0 이상 사용 :
[dateFormat setDateFormat:@"yyyy-MM-dd\'T\'HH:mm:ssZZZ"];
최신 정보
아래 Rob의 댓글을 참조하세요. iOS5.0 이상에서는 날짜 형식이 콜론이없는 시간대에서만 작동합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다