我有一个字符串:
stringValue = 2013-06-11 06:01:28.
当我尝试使用 NSDateFormatter 转换它时,它变成这样:date = 2013-06-10 22:01:28 +0000
.
我读过它们是同一时间点。事实上,当我得到日期的字符串值时,我得到了上面的字符串。
如果它们相同,有没有办法让日期的值等于我上面的字符串?我可以有一个 NSDate *date = 2013-06-11 06:01:28 吗?如果是,我该怎么做?
我有一个字符串:
stringValue = 2013-06-11 06:01:28.
当我尝试使用 NSDateFormatter 转换它时,它变成这样:date = 2013-06-10 22:01:28 +0000
.
我读过它们是同一时间点。事实上,当我得到日期的字符串值时,我得到了上面的字符串。
如果它们相同,有没有办法让日期的值等于我上面的字符串?我可以有一个 NSDate *date = 2013-06-11 06:01:28 吗?如果是,我该怎么做?
发生这种情况是因为当您将字符串转换为日期时,它会转换为 GMT 时间格式
如果您希望日期与字符串值相同,则必须设置标准本地时间
像
NSDate *date=[[NSDate alloc]init];
NSDateFormatter *timeFormat = [[NSDateFormatter alloc] init];
[timeFormat setTimeZone:[NSTimeZone timeZoneWithName:@"Asia/Kolkata"]];
[timeFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss'"];
date = [timeFormat dateFromString:@"2013-06-11 06:01:28"];
希望它可以帮助你
使用此格式化程序:
NSDateFormatter* f = [[[NSDateFormatter alloc] init] autorelease];
[f setDateFormat:@"yyyy-MM-dd hh:mm:ss"];