我正在尝试使用特定时区(不一定与系统时区相同)获取 Unix 时间戳
我试过这个:
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSTimeZone *gmt = [NSTimeZone timeZoneWithName:@"Australia/Melbourne"];
[dateFormatter setTimeZone:gmt];
NSString *timeStamp = [dateFormatter stringFromDate:[NSDate date]];
NSDate *curdate = [dateFormatter dateFromString:timeStamp];
int unix_timestamp = [curdate timeIntervalSince1970];
这显然应该给出澳大利亚的 Unix 时间戳(最多秒)。但是,当我登录时curdate
,它仍然是格林威治标准时间,timeStamp
是澳大利亚/墨尔本的时间。
这里可能是什么问题?