getHours()方法和getUTCHours()方法的区别

getHours()方法和getUTCHours()方法的区别,第1张

getHours()是获取本时区时间

getUTCHours()是获取的UTC时间,UTC时间是怎么来的呢?比如我们是东八区,UTC时间是我们的时区时间减8个小时,如果我们现在是上午11点,UTC时间就是上午3点,不知道你明白了没有

;           UTC时间与北京时间的换算

      我们知道,世界的每个地区都有自己的本地时间,整个地球共分为二十四时区,也就是说,每个时区都有自己的本地时间。

      在互联网通信中,统一使用一个标准时间,称为通用协调时(UTC, Universal Time Coordinated)。UTC与格林尼治时(GMT, Greenwich Mean Time)一样,都与英国伦敦的本地时相同。

      如何进行UTC时间与北京时间的换算呢北京市区是东八区,领先UTC 8个小时,例如:Sun, 19 July 2020 09:45:10 +0800,说明时间是2020年7月19号,星期日,上午9点45分10秒,该地区本地时领先UTC差 8个小时(+0800,就是东八区时间)。如果要把这个时间转化为UTC,可以使用以下公式:

      UTC + 时区差 = 本地时间

      时区差东为正,西为负。为此,把东八区时区差记为:+0800,

      UTC + (+0800) = 北京时间

      那么,

      UTC = 北京时间 - 0800,即:0945 - 0800 = 0145

      即UTC是当天凌晨1点45分10秒。若结果是负数就意味着是UTC前一天,把这个负数加上2400就是UTC在前一天的时间。例如,北京时间是 0225 (凌晨2点25分),那么,UTC就是 0225 – 0800 = -0375,负号意味着是前一天, -0375 + 2400 = 2025,既前一天的晚上8点25分。

程序如下:

import datetime

# 获取当前时间

current_time = datetimedatetimeutcnow() + datetimetimedelta(hours=8)

# 转换时区

new_timezone = datetimetimezone(datetimetimedelta(hours=-5))

converted_time = current_timeastimezone(new_timezone)

# 输出转换后的时间

print('UTC+8时间:', current_time)

print('UTC-5时间:', converted_time)

GMT:格林威治时间 是指位于伦敦郊区的皇家格林威治天文台的标准时间(开发中不常用)

UTC:协调世界时,世界统一时间,世界标准时间,国际协调时间。

中国大陆、中国香港、中国澳门、中国台湾、蒙古国、新加坡、马来西亚、菲律宾、西澳大利亚州的时间与UTC的时差均为+8,也就是UTC+8(相差八个小时)

这套时间系统被应用于许多互联网和万维网的标准中,因此在日常开发中UTC时间的使用较为常见

iOS中的NSDate对象存放的日期始终是UTC的标准时间(比如下面的例子,服务器返回的字符串是utc时间,本地时区是北京)

有结果可知:时间字符串转成NSDate时,没有指定时间字符串的时区,系统会根据本地时区,将时间字符串转成utc时间存放在NSDate对象中(通过Summary可以看出),而NSLog打印NSDate时,又会根据当地时区将utc时间转成本地时区时间打印出来。

结论:NSDate中存放的时间会自动转换成utc时间,NSLog打印的时间会自动根据时区打印不同的结果

以上就是关于getHours()方法和getUTCHours()方法的区别全部的内容,包括:getHours()方法和getUTCHours()方法的区别、utc是时区吗时刻是多少怎么算、查询日期库文档,写代码,完成当前时间从UTC+8到UTC-5的转换等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9701402.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存