2016-04-15 5 views
0

У меня есть строка даты «2016-04-01T05: 00: 00 + 08: 00», и я хочу преобразовать ее в количество секунд с 1 января 1970 года. делать так:Преобразование Дата и время в количестве секунд с 1970

NSDateFormatter *parsingFormatter = [NSDateFormatter new]; 
[parsingFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"]; 
NSDate *date = [parsingFormatter dateFromString:"2016-04-01T05:00:00+08:00"]; 
NSTimeInterval startTime = [date timeIntervalSince1970]; 

Но в приведенном выше примере startTime возвращает NIL. Может ли кто-нибудь сказать мне, что я делаю неправильно? Как я могу его преобразовать?

+1

Ваша строка формата даты неверна, используйте этот 'yyyy-MM-dd'T'HH: mm: ssZ' –

ответ

0

Попробуйте

NSDateFormatter *parsingFormatter = [NSDateFormatter new]; 
[parsingFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZ"]; 
NSDate *date = [parsingFormatter dateFromString:@"2016-04-01T05:00:00+08:00"]; 
NSTimeInterval startTime = [date timeIntervalSince1970]; 

я получаю дату "2016-03-31 21:00:00 +0000" формат UTC.