是否有充分的理由将时间存储在UTC中?

时间:2009-07-14 20:21:46

标签: date time utc

我想知道是否有任何充分的理由将时间信息存储在UTC(GMT)的其他任何内容中?我相信这是所有软件工程的坚实规则。转换为本地时间仅仅是在UI层发生的用于显示目的的转换。我还看到了需要翻译才能正确实现算法(处理午夜日期更改等)的情况。

7 个答案:

答案 0 :(得分:25)

一般来说,我发现使用UTC会更好。 有时您可能需要当地时间。然后我宁愿选择UTC +时区信息。

在一般情况下,重复事件可能非常棘手,您应该仔细分析用例。

想象一下定期会议,每周二上午9:00。 如果DST发生变化,会议仍应在(新的)上午9:00进行。

但在法国的一些人中没有增加会议。对他们来说,会议是在下午6点。 他们用不同的规则改变了夏令时。

当你改变夏令时,他们没有,所以有一段时间(直到法国改变夏令时)有人应该“关闭”:你的会议将在上午10点,他们的会议将在下午6点,或保持在上午9点并在下午5点移动他们的。没有其他办法,计算机与它无关。

应用程序将如何决定谁应该“修复”? 是大多数成员的团体吗? (美国1个人和法国20个人?)或者这个人的重要性是什么? (如果美国的一个人是CEO?)

您如何存储该信息? 我最好的解决方案是使用UTC +一个“主时区” “主时区”中的用户获胜(保持固定)。

事情变得非常棘手,但总的来说我发现UTC解决的问题比它引入的更多。

答案 1 :(得分:12)

我会说它依赖于应用程序。我从事电离层的空间物理模型研究。磁气圈。我们使用磁性当地时间,存储日期和时间。时间为Modified Julian Days

答案 2 :(得分:7)

警报&计划任务有时以当地时间存储,因此它们不受夏令时或时区更改的影响。

答案 3 :(得分:5)

UTC是一种具有TAI准确度和精确度的计时标准,但是会以不规则的间隔添加闰秒,以便能够密切跟踪平均太阳时(UT1)。 / p>

如果您使用的系统无法处理闰秒,则Bureau International des Poids et Mesures建议使用TAI而不是UTC。

请参阅:http://tycho.usno.navy.mil/leapsec.html

答案 4 :(得分:2)

自从?我确信在一些孤立的案件中有充分的理由。但一般来说,存储UTC比当地时间要好得多,所以我会将UTC视为默认位置,除非有一些特殊的考虑。

答案 5 :(得分:2)

在嵌入式系统中,您可能会从某种“蜱过去时代”形式的来源获得时间。

如果时间相对频繁地更新并且相对不频繁地显示,那么您可能会以与提供给您的方式相同的方式存储时间,并且仅在需要时将其转换为显示。

一般而言,除非有其他考虑,否则UTC是可行的方法。

答案 6 :(得分:0)

如果您确定只使用当地时间。