【问题标题】:What time standards are these?这些是什么时间标准?
【发布时间】:2014-09-29 23:03:56
【问题描述】:

对时区和时间标准之间的转换感到沮丧似乎是程序员之间的共同经历,我终于加入了俱乐部。您能帮我识别这三种格式,以便我查找吗?

0325.09:58:27.944

1407337254

20140806 10:59:54

我意识到这可能还不够,因为很难区分月份和日期等等,但希望标点符号至少足以识别第一种格式。

【问题讨论】:

  • 你的意思是他们遵循一些命名标准吗?或者只是如何解码它们?
  • 哦,你说的是“这两个”但贴了三个;它们是否都代表相同的时间,最后一个作为参考?
  • 第二种格式是Unix timestamp:从 1970 年 1 月 1 日午夜到今天下午 3 点左右的秒数。第一个显然是在上午 10 点之前,最后一个数字可能是小数秒(毫秒),但我不确定 0325 代表什么。
  • 谢谢!我有两个,但添加了另一个,忘记更改它;我现在就这样做。
  • 我认为第三种格式可能可供参考的原因是它非常易于解码 - YYYYMMDD hh:mm:ss - 你认为它是一个命名标准并想知道它是什么原因吗?是?

标签: time timezone timestamp


【解决方案1】:

这些都不符合标准,但是您可以推断它们可能代表什么。

0325.09:58:27.944

这个很棘手,因为它0325 可以代表任何一个:

  • 某个未知年份的 3 月 25 日
  • 某个未知纪元之后的第 325 天
  • 已过去 325 天

虽然在 3 月 25 日选项之外的任何选项中都有前导零有点奇怪。

1407337254

这是一个“UNIX 时间戳”。 You can read about them on Wikipedia。这相当于格林威治标准时间 2014 年 8 月 6 日星期三 15:00:54。 epochconverter.com 是一个快速处理这些值的好网站。

注意,虽然 UNIX 时间戳是一种通用约定,但它们不是标准。没有来自 IETF、W3C、ISO、ECMA 或其他标准机构的 RFC 或其他规范来描述 UNIX 时间戳的标准。

20140806 10:59:54

第一部分是 YYYYMMDD 格式的年份。第二部分是 HH:MM:SS 格式的时间。这接近于ISO8601,但是:

  • 通常有一个 T 分隔日期和时间组件,尽管规范确实允许“通过双方协议”将其省略。

  • 混合基本形式和扩展形式是无效的。您可能有2014-08-06T10:59:5420140806T105954,但不是您在此处展示的组合。

【讨论】:

    猜你喜欢
    • 2020-09-25
    • 2013-02-08
    • 1970-01-01
    • 2017-01-06
    • 1970-01-01
    • 2011-12-21
    • 1970-01-01
    • 1970-01-01
    • 2014-01-05
    相关资源
    最近更新 更多