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

如何在iOS中将datetime字符串转换为NSDate?,ios,objective-c,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]

我有这样的日期时间格式

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?

尝试这样设置 NSDate*currDate=[NSDate日期]

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

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

NSString *dateString = [dateFormatter stringFromDate:currDate];

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

[formatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
[formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
我希望它能帮助你改变这一行

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

Z是时区

日期字符串是字符串格式的日期

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];

ns date是2015-10-06 07:09:12+0000作为ns date您得到的+0000是什么?如何将其删除。我正在使用以下github库,但使用nsdate时会使应用程序崩溃。是默认时区Uma,@Anbu.Karthik我不理解该时区。请使用正确类型的日期格式并将其转换为NSString。