【发布时间】:2016-10-20 04:46:19
【问题描述】:
我想从 nsdate 获取小时:分钟 AM/PM。
NSDate *globalDateTime; //globaldate is : 2016-10-20 06:49:00 +0000 (UTC)
NSString *dateString12 = [NSDateFormatter localizedStringFromDate:globalDateTime
dateStyle:NSDateFormatterShortStyle
timeStyle:NSDateFormatterFullStyle];
NSLog(@"%@",dateString12);
我得到的结果是 NSString 格式:20/10/16, 2:03:00 PM 印度标准时间
预期结果为 NSString 格式:印度标准时间 20/10/16,下午 6:49:00
或者有什么方法我只能得到 NSString 格式的预期结果:下午 6:49
dateString12 在 NSLog 中是 UTC 格式或其他格式的。它给了我适当的日期,但没有给我适当的时间。
请帮助我如何获得适当的时间。
【问题讨论】:
-
您的代码没有问题。
dateString12是当地时间。这就是你想要的,对吗? -
@rmaddy 是的。但我没有得到当地时间。我认为它正在转换为 UTC 或其他格式。
-
您正在获取当地时间。这就是
NSDateFormatter默认所做的。当您查看globalDateTime的值时,您会看到它的 UTC 时间值,而不是印度时间。无论您在什么设备上运行代码,dateString12的值都是本地时间。
标签: ios nsdate nsdateformatter