Ios NSDate将时区更改为GMT+;2
我有一个时区为Ios NSDate将时区更改为GMT+;2,ios,timezone,nsdate,nsdateformatter,Ios,Timezone,Nsdate,Nsdateformatter,我有一个时区为GMT+00.00的NSDate,我想把它改为GMT+02.00。为此,我创建了NSDateFormatter,并将时区设置为UTC,但它确实给了我预期的结果 这是我的密码 NSDateFormatter *timeformater = [[NSDateFormatter alloc] init]; [timeformater setLocale:[NSLocale currentLocale]]; [timeformater setDateFormat:@"EEEE-dd-MMM
GMT+00.00
的NSDate
,我想把它改为GMT+02.00
。为此,我创建了NSDateFormatter
,并将时区设置为UTC
,但它确实给了我预期的结果
这是我的密码
NSDateFormatter *timeformater = [[NSDateFormatter alloc] init];
[timeformater setLocale:[NSLocale currentLocale]];
[timeformater setDateFormat:@"EEEE-dd-MMMM-yyyy HH:mm a"];
[timeformater setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
如何正确更改时区?NSDate是一个时间点,与时区无关。你不能改变它的时区,因为它没有时区。如果我们在不同的地区,同时拨打[NSDate date](例如,如果我打电话给你,我们同时点击一个按钮),即使我们的手表显示不同的时间,我们也会得到相同的NSDate
NSDateFormatter用于创建字符串以显示NSDate值,具体取决于时区。NSCalendar用于使用NSDate进行计算,具体取决于时区。但是您不能更改NSDate的时区 NSDate是一个时间点,与时区无关。你不能改变它的时区,因为它没有时区。如果我们在不同的地区,同时拨打[NSDate date](例如,如果我打电话给你,我们同时点击一个按钮),即使我们的手表显示不同的时间,我们也会得到相同的NSDate
NSDateFormatter用于创建字符串以显示NSDate值,具体取决于时区。NSCalendar用于使用NSDate进行计算,具体取决于时区。但是您不能更改NSDate的时区
NSDateFormatter
不能用于“更改”时区。如果您需要将NSDate
移动两个小时,请使用NSCalendar
API。好的,但是我如何使用它以及感谢NSDateFormatter
不能用于“更改”时区。如果您需要将NSDate
移动两个小时,请使用NSCalendar
API。好的,但是我如何使用它,谢谢