gpt4 book ai didi

.net - JSON中Duration的良好格式是什么?

转载 作者:行者123 更新时间:2023-12-02 01:01:14 28 4
gpt4 key购买 nike

我意识到JSON没有实际的日期格式,考虑到JavaScript所使用的,使用ISO 8601是一个不错的选择。持续时间如何? JavaScript没有内置格式。

  • 我碰到了ISO 8601 Durations,例如我没有见过的P3Y6M4DT12H30M5S在野外使用了很多。它看起来也很冗长且难以阅读。据我所知,如果您需要的话,它也不支持毫秒。
  • 我正在使用C#,其TimeSpan类型在1天,2小时,3分钟,4秒和5毫秒内输出1.02:03:04.0050000
  • 我可以将秒数或毫秒数用作整数。这仅是完全机器可读的,如果您使用秒或毫秒而不标记其值,则并不明显。

  • 我几乎没看过第一种格式。第二个对我来说似乎更直观,但是我担心它在.NET之外并不为人所知。第三种格式可能是跨平台最友好的格式,但完全不可读。

    最佳答案

    基本上,持续时间是毫秒数或刻度(如果需要更高的精度)。

    1 tick is 100 nanoseconds. There are 10,000 ticks in a millisecond.


    ISO 8601:现有标准
    最好的方法是使用您提到的 ISO 8601的通用标准。它是人类和机器可读的。
    什么对您来说更容易阅读和更改?
  • 1036800000 ms
  • P12D

  • 您可以使用 P1Y2M10DT2H30M之类的ISO 8601持续时间以不同的方式使用:
  • 在JavaScript中由moment.js处理
  • 以JSON格式传递为string
  • 在C#中由NodaTime处理
  • 在数据库中存储

  • Keep in mind that ISO 8601 also resolves the issue when switching from or to Daylight saving time.

    PT36H is not the same as P1DT12H.


    Schema.org
    Internet上的schema.org上有用于结构化数据的不同模式。其中一些正在使用 Duration,应以 ISO 8601 duration format表示。

    关于.net - JSON中Duration的良好格式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50471779/

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