加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

C语言下Linux下的DST恢复

发布时间:2020-12-14 01:45:03 所属栏目:Linux 来源:网络整理
导读:我有来自德国柏林的日期/时间信息. 例如: 2011-05-16 12:24:23, 2011-01-21 17:00:31 不幸的是,这些时间没有夏令时信息.我知道第一次约会是CEST,第二次是CET. 我可以写一下检查日期/时间是否为夏令时. 夏季开始于3月2日上午2点的最后一个周日,并在10月3日的
我有来自德国柏林的日期/时间信息.
例如:
2011-05-16 12:24:23,
2011-01-21 17:00:31

不幸的是,这些时间没有夏令时信息.我知道第一次约会是CEST,第二次是CET.

我可以写一下检查日期/时间是否为夏令时.

夏季开始于3月2日上午2点的最后一个周日,并在10月3日的最后一个星期日结束.

自我开发这样的检查似乎容易出错.是否有一些东西可以在Linux下用于C?

谢谢您的帮助.

解决方法

您可以使用mktime()将时间转换为time_t,然后将其传递回localtime(),这将设置tm_isdst. mktime()和localtime()都使用本地系统的时间配置,因此您真正发现时间戳是否在DST中.这里显而易见的问题是你有一个没有地理信息的时间戳字符串,所以你能做的最好就是假设它是你当前的位置.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读