0

目前我在 iPhone 应用程序中工作,在这里我使用NSString来存储(2012-07-11 11:49:55 +0000)和使用NSDateFormatter来转换日期和时间,但是输出来了05:19:55,但是我想要11:49:55,请任何人帮助我

在这里我尝试了源代码供您参考

NSString *dateString = [NSString stringwithformat:%@,(2012-07-11 11:49:55 +0000)];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"hh:mm:ss";
[dateFormatter setTimeZone:[NSTimeZone systemTimeZone]];
NSLog(@"The Current Time is %@",[dateFormatter stringFromDate:dateString]);
[dateFormatter release];
4

2 回答 2

2

您的系统时区不是 +0000。所以时间是根据它格式化的。解决方案是将同一时区设置为 GMT (+0000)。

[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
于 2012-07-13T08:06:17.403 回答
0

原因是您正在更改TimeZone,请注释掉以下行,它应该返回您在 中提供的时间dateString

[dateFormatter setTimeZone:[NSTimeZone systemTimeZone]];
于 2012-07-13T08:04:50.850 回答