Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UTC时间字符串到本地时区字符串。_Ios_Objective C_Nsdate_Nsdateformatter - Fatal编程技术网

Ios UTC时间字符串到本地时区字符串。

Ios UTC时间字符串到本地时区字符串。,ios,objective-c,nsdate,nsdateformatter,Ios,Objective C,Nsdate,Nsdateformatter,我从服务器获取UTC时间,我需要根据本地时区显示该时间,这是我的代码 NSString *UTCtime = @"10:30"; NSDateFormatter * frmt = [[NSDateFormatter alloc]init]; [frmt setDateFormat:@"HH:mm"]; NSDate *localTime = [frmt dateFromString:UTCtime]; 提前感谢。暂时更改时区: 首先,将UTC时间字符串转换为NSDate: NSString *

我从服务器获取UTC时间,我需要根据本地时区显示该时间,这是我的代码

NSString *UTCtime = @"10:30";
NSDateFormatter * frmt = [[NSDateFormatter alloc]init];
[frmt setDateFormat:@"HH:mm"];
NSDate *localTime = [frmt dateFromString:UTCtime];
提前感谢。

暂时更改时区: 首先,将UTC时间字符串转换为
NSDate

NSString *UTCtime = @"10:30";

NSDateFormatter *frmt = [[NSDateFormatter alloc]init];
[frmt setDateFormat:@"HH:mm"];
[frmt setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];

NSDate *utcTime = [frmt dateFromString:UTCtime];
然后计算当前时区与UTC的时间差(以秒为单位):

NSInteger timeZoneDiff = [[NSTimeZone systemTimeZone] secondsFromGMT];
将该时差添加到上面计算的
NSDate
UTC时间

NSDate *localTime = [utcTime dateByAddingTimeInterval:timeZoneDiff];