如何在iOS中将datetime字符串转换为NSDate?

时间:2015-10-06 10:49:09

标签: ios objective-c

我有这样的日期时间格式

2015-10-06 12:39:12

当我尝试转换为nsdate时,它返回null。我正在使用下面的代码。

 NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
 [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];
 NSDate *date = [formatter dateFromString:user_post.modification_date];

请告诉我如何将其转换为正确的NSDate

4 个答案:

答案 0 :(得分:1)

尝试这样设置     NSDate * currDate = [NSDate date];

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];

[dateFormatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];

NSString *dateString = [dateFormatter stringFromDate:currDate];

答案 1 :(得分:1)

dateString是字符串格式的日期。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *dateFromString = [[NSDate alloc] init];
dateFromString = [dateFormatter dateFromString:dateString];

答案 2 :(得分:0)

我建议你设置时区,可能是问题的原因

[formatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
[formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];

我希望它可以帮到你

答案 3 :(得分:0)

仅更改此行。

[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

Z是时区