2014-11-07 2 views
1

rails api에서 NSDate 객체로 날짜를 변환하려고합니다. api의 응답 날짜는 2014-11-05T16:29:09.614Z .614Z의 의미는 무엇입니까?Rails date to NSDate

답변

2

INT Z는 밀리 초, 시간대입니다 줄루어에 대한 Z 스탠드 전에 :

http://en.wikipedia.org/wiki/Coordinated_Universal_Time에서 :

UTC의 시간대가 가끔 문자 Z-A로 표시됩니다 에 해당하는 항해 시간대 (GMT)는 약 1950 년 이래로 Z 으로 표시되어 있습니다.이 문자는 또한 0,2 시간의 "영역 설명"을 참조하며 1920 년 이래로 사용되었습니다 (시간대 기록 참조).). Z에 대한 NATO 음 성 알파벳 및 아마추어 라디오 단어가 "줄 루어"이기 때문에 UTC는 줄 루어 시간이라고도합니다.

따라서 당신은 시간의 형식은 다음과 같습니다

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

날짜는 위의 예처럼 Z 올바르게 장치 현재 시간대로 변환됩니다 포함합니다.

+0

감사합니다. 이 날짜 (일, 월, 년)에서 날짜 구성 요소를 가져 오는 방법은 무엇입니까? 이 객체의 NSObject description 클래스 메쏘드는 유효한 값 ('2014-11-05 16:29:09 + 0000'을 반환)이지만 컴포넌트는 0을 반환합니다. – pardnoj

+1

NSDateFormatter를 사용하여 정말로 'NSDate'에서 날짜 문자열을 변경합니다 그런 다음 [NSDateComponents'] (https://developer.apple.com/Library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSDateComponents_Class/index.html)를 사용하여 필요한 특정 날짜 구성 요소를 가져옵니다. – rckoenes

+0

NSDate 카테고리를 다음과 같이 생성했습니다 : '+ (NSDate *) dateFromApi : (NSString *) date { NSDateFormatter * formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat : @ "yyyy-MM-dd'T'HH : mm : ss.SSSZ"]; 반환 [formatter dateFromString : date]; }'하지만 구성 요소는 0을 반환합니다. – pardnoj