1

date始终为零,我无法理解问题所在。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSDate *date = [dateFormatter dateFromString:@"2013-07-16T07:40:36.939-04:00"];
4

4 回答 4

3

像这样尝试,添加小时使用-符号和减去使用+符号。

 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"];
    NSDate *date = [dateFormatter dateFromString:@"2013-07-16T07:40:36.939-04:00"];//chnage symbal here.
    NSLog(@"%@",date);

运单:-2013-07-16 11:40:36 +0000

于 2013-07-16T13:16:34.943 回答
0

请检查:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS-hh:mm"];
NSDate *date = [dateFormatter dateFromString:@"2013-07-16T07:40:36.939-04:00"];
NSLog(@"%@",date);

时区使用以下甲酸盐:

     Z  

±hh:mm 或 ±hhmm

    ±hh

如果您遇到任何问题,请告诉我。

于 2013-07-16T13:19:56.697 回答
0

由于来自服务器的时间戳格式为 -04:00,因此我没有使用 ZZZZ

#define DEFAULT_DATE_FORMAT_TIMESTAMP @"yyyy-MM-dd'T'HH:mm:ss.SSSZZZZ"
于 2013-07-16T14:25:44.900 回答
-1
NSDateFormatter* df = [[NSDateFormatter alloc]init];
[df setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSString* str = @"2012-03-01T23:08:25.000Z";   // NOTE the change is here
NSDate* date = [df dateFromString:str];
于 2013-07-16T13:11:47.723 回答