【发布时间】:2015-10-14 02:03:48
【问题描述】:
我有一个关于 [NSDate date] 中的时区如何工作的问题。在我的应用程序中,我正在进行 PUT Web 服务调用,我必须在其中发送 UTC 日期,转换为毫秒。
-(NSNumber *) dateToMillis: (NSDate *) date
{
long long val = (long long)[date timeIntervalSince1970] *1000.0;
return @(val);
}
NSDate *date = [NSDate date];
NSLog(@"Date - %@", [self dateToMillis:date]);
NSTimeInterval timeZoneSeconds = [[NSTimeZone timeZoneWithName:@"CST"] secondsFromGMT];
NSDate *dateInUTC = [date dateByAddingTimeInterval:timeZoneSeconds];
NSLog(@"Date UTC - %@", [self dateToMillis:dateInUTC]);
我假设 [NSDate date] 将在本地时区 (CST) 中,并尝试将其转换为 UTC,但两个 NSlog 打印的值完全相同。
[NSDate date] 不返回本地时区的日期时间吗?
【问题讨论】:
标签: ios objective-c datetime timezone nsdate