gpt4 book ai didi

jodatime - 纪元时间可以倒退多远?

转载 作者:行者123 更新时间:2023-12-03 09:27:27 24 4
gpt4 key购买 nike

我正在尝试http://www.epochconverter.com/我可以做 100 年,但是当我转到 99 年时,它似乎崩溃并报告 1999 而不是 0099。这是一个错误吗?纪元时间应该能够代表多远的时间。

我还尝试将 MIN_LONG+1 插入 joda-time ,报告为 -292275055-05-16T16:47:04.192Z 所以基本上年份 -292275055 听起来比 1999 年更正确,epochconverter.com 甚至无法解析最短长度。

允许的纪元时间最小值是多少?我可以使用 min long 吗?

谢谢,院长

最佳答案

理论上没有限制。 “纪元时间”只是定义时间点(1970 年 1 月 1 日午夜 GMT)之前/之后的秒数;使用足够宽的数字类型,您可以用这些术语来描述任何时间。

实际上,超过一定限度,这样的时间值就变得毫无意义:

  • 带符号的 32 位整数的最小值约为 -20 亿,对应于 1901 年末的日期。

  • 如果您对日期使用浮点类型,则超出某个点后它将失去分辨率。不要使用单精度(32 位) float 作为时间值;他们对当前日期的分辨率约为两分钟(128 秒)!不过,在可预见的 future ,64 位 float 是很好的,因为它们可以精确地表示所有 32 位整数。

  • 时区在 1900 年左右之前尚未标准化,因此尝试表示该时间之前的时间是一件不精确的事情。

  • 公历在 1582 年之前尚未定义(并且直到 1920 年代才得到普遍使用!),因此尝试对更早的日期使用标准日期转换例程将给出不正确的结果。

  • 同样,公元 525 年才定义了纪元(Anno Domini)历法。另外,请注意,没有年份 0。

  • 某些库可能有其他任意限制或约束。例如,您在这里遇到的情况是,Javascript 日期库假定小于 100 的年份是 1900 年到 1999 年之间年份的简写。

关于jodatime - 纪元时间可以倒退多远?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17432226/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com