什么是比较两个时区的最佳方式?系统时区与所选时区
我现在面临的一个问题,而使用- (BOOL)isEqualToTimeZone:(NSTimeZone *)aTimeZone
方法比较两个NSTimeZone
实例。
NSString *timeZoneName = ...
NSTimeZone *sytemTimeZone = [NSTimeZone systemTimeZone];
NSTimeZone *selectedTimeZone = [NSTimeZone timeZoneWithName:timeZoneName];
if ([sytemTimeZone isEqualToTimeZone:selectedTimeZone])
isEqual = YES;
else
isEqual = NO;
第1步:进入设置(应用程序)>常规>日期&时间>时区,并搜索 “奥斯汀”。你会得到的入口是“美国奥斯汀”。选择此时区。这应该是你的新系统时区吧!
第2步:创建一个小型的iPhone/iPad应用程序。使用[NSTimeZone knownTimeZoneNames]
获取时区名称列表。然后尝试找到“奥斯汀”。它不在那里!那么,我想我们可以使用“美国/芝加哥”作为时区?
为什么设置的时区列表与我们的不同?
第3步:现在比较系统时区和“美国/芝加哥”的时区。他们不匹配。
如果您记录系统时区的“名称”,它显示了什么? –
“US/Central(CDT)offset -18000(Daylight)” – Mustafa
对于在应用程序中设置的“America/Chicago”,它给了我“America/Chicago(CDT)offset -18000(Daylight)”。 – Mustafa