我有这样的日期字符串格式:
2007-04-28T03:00:33.000Z
我想用这种方法将其转换为NSDate
:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-MM-ddTHH:mm:ss.000Z"];
NSDate *myDate = [df dateFromString:str];
但是myDate
总是零。知道为什么吗?
答案 0 :(得分:8)
使用此格式
[df setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZZZ"];
答案 1 :(得分:2)
试试这个
NSString *dateString = @"2007-04-28T03:00:33.000Z";
dateString = [dateString stringByReplacingOccurrencesOfString:@":" withString:@"" options:0 range:NSMakeRange(dateString.length-3, 1)];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZZZ"];
NSDate *date = [formatter dateFromString:dateString];
NSLog(@"date: %@", date);
答案 2 :(得分:0)
将格式更正为
yyyy-MM-dd'T'HH:mm:ss.SSSZZZ