gpt4 book ai didi

c# - DateTimeFormatInfo.InvariantInfo 不一致的日期模式?

转载 作者:太空宇宙 更新时间:2023-11-03 15:08:08 26 4
gpt4 key购买 nike

根据 MSDN,静态属性 DateTimeFormatInfo.InvariantInfo获取与文化无关(不变)的默认只读 DateTimeFormatInfo 对象”。

然而,长日期模式是“dddd, dd MMMM yyyy”,格式类似于 2016 年 2 月 29 日,星期一。这种格式在西欧大陆上很常用。

然而,短日期模式是“MM/dd/yyyy”,其格式为 02/29/2016。这种格式在美国很常用。

更糟糕的是,当尝试转换为可排序格式“s”时,此 FormatProvider 将导致 02/29/2016 00:00:00,这几乎无法排序。

这种不一致的行为是错误,还是对“文化无关”的妥协?

最佳答案

对我来说似乎是标准行为。 DateTimeFormatInfo.InvariantInfo 既不表示中性文化也不表示特定文化,但它生成可以转换为任何文化特定格式的格式。正如您在 source code 中看到的那样它是基于英语的,但不是特定于文化的(en 但不是 en-US)。还有你的观察:

The short date pattern however is "MM/dd/yyyy" which results in a format 02/29/2016. This format is commonly used in the USA.

不正确,因为 en-US 文化 ToString("d") 将给出 2/29/2016(无前导)。此外,时间是上午或下午。

关于c# - DateTimeFormatInfo.InvariantInfo 不一致的日期模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42418700/

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