2016-09-12 2 views
-3

지금까지 문자열을 변환하려고했습니다. 문자열 형식의NSString을 NSDate로 변환하십시오.

날짜 : 2016-09-12T09:52:39Z 내가 날짜와 시간 텍스트 사이이어야 공간이있는 솔루션의 대부분

(모든 공간 없음). 내 경우에는 효과가 없어.

위의 날짜 형식을 변환 할 때 가장 중요한 문제는 "T"와 "Z"입니다. 나는 날짜 포매터가 날짜 "dd"와 시간대 "T"를 distingush하지 않는 방법을 생각합니다. 나는 그것을 포맷하려고 시도했으나 작동하지 않았다.

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"]; 

NSDate *date = [[NSDate alloc] init]; 
date = [formatter dateFromString:datestring]; 

이러한 문자열을 날짜로 변환하는 솔루션은 무엇입니까?

편집 : 나는 질문을 게시하는 동안 언급했다 - "문자열을 날짜로 변환하는"과 관련된 대부분의 질문에 공백이 있으므로 그 텍스트에 따라 포맷터를 작성할 수 있습니다. 제 경우에는 날짜와 시간 부분 사이에 공백이 없었습니다. & 대신 T가 있습니다. 따라서 문자열 날짜를 날짜 개체로 변환 할 수 없었습니다. 대신 null이되었습니다. 내가 어떤 질문을 게시 한 후에 어떤 해결책을 시도했는지 &.

+0

정확히 작동하지 않는 것은 무엇입니까? 나는 당신의 코드를 시도했고'NSDate'에'2016-09-12 07:52:39 + 0000'을 얻었다. – Larme

+0

무엇이 필요합니까? –

+0

@Larme, 포맷터가 문자열을 적절한 날짜로 변환하지 않습니다. 질문에서 언급 한 예제 문자열로 시도해 보셨습니까? – JiteshW

답변

0

enter image description here

PLZ 당신의 날짜 열을 확인합니다. 그것은 내 일에 잘 작동합니다.

+0

이 답변은 잘못되었습니다. 'Z'를 날짜 형식으로 인용하지 마십시오. 날짜 문자열의'Z'는 날짜의 시간대를 나타냅니다. 'Z'는 UTC 시간대를 의미합니다. 'Z'를 날짜 형식으로 인용하면,'Z'는 무시되고 날짜 문자열은 UTC 시간 대신 현지 시간으로 파싱되어 잘못된 날짜를 얻습니다. – rmaddy

+0

@rmaddy plz 무엇이든하기 전에 사용자의 의견을 읽으십시오. –

+0

무슨 댓글이? 답안의 이미지를보십시오. 'date'의 값은 UTC 4시 22 분 39 초의 시간을 보여 주지만 해석되는 문자열은 UTC 9:52:39입니다. 그들은 동일해야하지만 형식 문자열에서 Z를 인용하는 실수로 인한 것이 아닙니다. – rmaddy

관련 문제