Java 为什么日期从1970年1月1日算起?
使用日期(1970年1月1日)作为时间操纵的默认标准有什么原因吗?我在Java和Python中都看到了这个标准。我知道这两种语言。还有其他流行语言遵循相同的标准吗 请描述。这是 Unix时间或POSIX时间是一种用于描述时间点的系统,定义为自1970年1月1日午夜前协调世界时(UTC)以来经过的秒数,不包括闰秒Java 为什么日期从1970年1月1日算起?,java,python,programming-languages,Java,Python,Programming Languages,使用日期(1970年1月1日)作为时间操纵的默认标准有什么原因吗?我在Java和Python中都看到了这个标准。我知道这两种语言。还有其他流行语言遵循相同的标准吗 请描述。这是 Unix时间或POSIX时间是一种用于描述时间点的系统,定义为自1970年1月1日午夜前协调世界时(UTC)以来经过的秒数,不包括闰秒 是的,C(及其家族)。这也是Java的发展方向。1970年1月1日00:00:00上午是生命的零点 使用日期(1970年1月1日)作为时间操纵的标准有什么原因吗 没什么重要的 Pytho
是的,C(及其家族)。这也是Java的发展方向。1970年1月1日00:00:00上午是生命的零点 使用日期(1970年1月1日)作为时间操纵的标准有什么原因吗 没什么重要的 Python的
time
模块是C库。问肯·汤普森为什么选择那个日期作为划时代的日期。也许是某人的生日
Excel使用两个不同的时代。为什么不同版本的excel使用不同的日期
除了实际的程序员,没有人知道为什么会做出这样的决定
而且
选择日期的原因无关紧要。就是这样
天文学家使用他们自己的划时代日期:
为什么??必须选择一个日期才能算出结果。任何随机日期都可以
在一般情况下,一个远在过去的日期可以避免负数
一些更聪明的软件包使用了公历1年。第一年有什么原因吗?在历法计算之类的书中有一个原因:它在数学上稍微简单一点
但是如果你仔细想想,1/1/1和1/1/1970之间的差异只是1969年,一个微不足道的数学偏移量 Q)为什么日期从1970年1月1日算起 A)它必须尽可能是最近的,但要包括一些过去的。 很可能没有其他重要的原因,因为很多人都有同样的感受 他们知道如果他们把它放在太远的过去会带来问题,如果它是在未来,他们知道它会带来负面的结果。过去没有必要更深入,因为事件很可能发生在未来 注意事项: 玛雅人,另一方面,有必要把事件放在过去,因为他们有很多过去的知识,他们制定了一个长期的日历。只是把所有的日常现象放在日历上
时间戳不是日历,它是一个纪元。我相信玛雅人也用同样的观点制定了他们的长期日历。(这意味着他们非常清楚他们与过去没有任何关系,他们只是需要从更大的角度来看过去)为什么总是1970年1月1日,因为--“1970年1月1日”通常被称为“纪元日期”,是Unix计算机的时间开始的日期,时间戳被标记为“0”。自该日期起的任何时间都是根据经过的秒数计算的。简单地说。。。任何日期的时间戳都将是该日期与“1970年1月1日”之间的秒差。时间戳只是一个整数,从“1970年1月1日午夜”的数字“0”开始,随着UNIX时间戳转换为PHP和其他开放源代码语言提供的可读日期的每一秒,时间戳将递增“1”功能 使用日期(1970年1月1日)作为默认标准 这个问题有两个错误的假设:
- 自1970年以来,计算机中的所有时间跟踪都是作为计数进行的
- 这种跟踪是标准的
- 无数(数十亿?)的Microsoft Excel和Lotus 1-2-3文档使用1900年1月0日(1899年12月31日)的
- 现在全世界都在使用格林尼治标准时间2001年1月1日的标准时间
- 卫星导航系统使用1980年1月6日的
YYYY-MM-DDTHH:MM:SS.SSSZ
,例如2014-10-14T16:32:41.018Z
从那个时代开始算什么
自历元时间跟踪以来计数的另一个问题是时间单位,通常使用至少四个级别的分辨率
- 秒
最初的Unix工具使用整秒,如果存储为32位整数,则会导致自1970年以来达到秒数限制时的错误
由较旧的Java库使用,包括捆绑的Java.util.Date类和库
由数据库使用,例如
由Java 8中的新用户使用
接下来是另一种流行语言