Ios 获取UTC+格式的时区;5:30

Ios 获取UTC+格式的时区;5:30,ios,objective-c,timezone,utc,Ios,Objective C,Timezone,Utc,我想以字符串形式获取用户的时区,格式为UTC+5:30 我试过这样 NSTimeZone *timeZone=[NSTimeZone localTimeZone]; NSLog(@"%@ || %@",timeZone.abbreviation,timeZone.name); 这给了我这个输出。 (但没有得到我想要的时间) 伊斯特| |亚洲/加尔各答 谢谢 您将获得如下输出: +0530适用于UTC+5:30 更新:(如评论中所问) 请尝试以下代码以获得所需的格式 NSDateFo

我想以字符串形式获取用户的时区,格式为
UTC+5:30

我试过这样

NSTimeZone *timeZone=[NSTimeZone localTimeZone];
NSLog(@"%@   ||   %@",timeZone.abbreviation,timeZone.name);
这给了我这个输出。 (但没有得到我想要的时间)

伊斯特| |亚洲/加尔各答

谢谢

您将获得如下输出:

+0530
适用于
UTC+5:30

更新:(如评论中所问)

请尝试以下代码以获得所需的格式

  NSDateFormatter *df = [[NSDateFormatter alloc]init];
df.timeZone = [NSTimeZone localTimeZone];
df.dateFormat = @"Z";
NSString *localTimeZoneOffset = [df stringFromDate:[NSDate date]];
NSLog(@"%@",localTimeZoneOffset);

NSString *one = [localTimeZoneOffset substringToIndex:1];
NSString *two = [localTimeZoneOffset substringWithRange:NSMakeRange(1, 2)];
NSString *three = [localTimeZoneOffset substringWithRange:NSMakeRange(3, 2)];

NSString *result = [NSString stringWithFormat:@"utc%@%@:%@",one,two,three];

NSLog(@"result : %@",result);
您将获得如下输出:

+0530
适用于
UTC+5:30

更新:(如评论中所问)

请尝试以下代码以获得所需的格式

  NSDateFormatter *df = [[NSDateFormatter alloc]init];
df.timeZone = [NSTimeZone localTimeZone];
df.dateFormat = @"Z";
NSString *localTimeZoneOffset = [df stringFromDate:[NSDate date]];
NSLog(@"%@",localTimeZoneOffset);

NSString *one = [localTimeZoneOffset substringToIndex:1];
NSString *two = [localTimeZoneOffset substringWithRange:NSMakeRange(1, 2)];
NSString *three = [localTimeZoneOffset substringWithRange:NSMakeRange(3, 2)];

NSString *result = [NSString stringWithFormat:@"utc%@%@:%@",one,two,three];

NSLog(@"result : %@",result);

您可以使用NSDate格式化程序从UTC获取偏移量:

NSDateFormatter *dates = [[NSDateFormatter alloc]init];
[dates setDateFormat:@"Z"];    
NSLog(@"%@", [dates stringFromDate:[NSDate date]]);
这将记录:+0530(+5:30)

如果您希望它以您的特定格式显示,您只需执行以下操作:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"Z"];

NSString *offetString = [dateFormatter stringFromDate:[NSDate date]];

NSString *formattedString = [NSString stringWithFormat:@"UTC%@:%@",[offetString substringWithRange:NSMakeRange(0, 3)],[offetString substringWithRange:NSMakeRange([offetString length] - 2, 2)]];

您可以使用NSDate格式化程序从UTC获取偏移量:

NSDateFormatter *dates = [[NSDateFormatter alloc]init];
[dates setDateFormat:@"Z"];    
NSLog(@"%@", [dates stringFromDate:[NSDate date]]);
这将记录:+0530(+5:30)

如果您希望它以您的特定格式显示,您只需执行以下操作:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"Z"];

NSString *offetString = [dateFormatter stringFromDate:[NSDate date]];

NSString *formattedString = [NSString stringWithFormat:@"UTC%@:%@",[offetString substringWithRange:NSMakeRange(0, 3)],[offetString substringWithRange:NSMakeRange([offetString length] - 2, 2)]];

您期望的答案(例如+5.30或UTC+5:30UTC+5:30)更可取您期望的答案(例如+5.30或UTC+5:30UTC+5:30)更可取