如何在GMT中返回所有可用的系统时区

时间:2013-01-12 06:36:18

标签: iphone cocoa-touch ios5 nstimezone

我想使用GMT格式的所有可用系统时区,如

(GMT+5:00)chennai,Mumbai,Kolkata NewDelhi

任何人都可以提供帮助吗?

2 个答案:

答案 0 :(得分:0)

请尝试以下代码行。

NSArray *timeZoneNames = [NSTimeZone knownTimeZoneNames];
for(NSString *stringName in timeZoneNames) {
    NSTimeZone *timeZoneTemp = [NSTimeZone timeZoneWithName:stringName];
    NSLog(@"%@", [timeZoneTemp description]);
}

答案 1 :(得分:0)

首先将所有时区存储为:

NSArray *timezoneNames = [NSTimeZone knownTimeZoneNames];
NSMutableArray *timezones = [NSMutableArray arrayWithCapacity:[timezoneNames count]];
for (NSString *name in [timezoneNames sortedArrayUsingSelector:@selector(compare:)]){
    [(NSMutableArray *)timezones addObject:[NSTimeZone timeZoneWithName:name]];
}
NSLog(@"All timezones :\n%@",timezones);

然后,您可以通过添加和减去其相对于GMT的偏移量来转换所有时区。