【问题标题】:Why does DateTimeInfo.MonthNames return a 13 member? [duplicate]为什么 DateTimeInfo.MonthNames 返回 13 个成员? [复制]
【发布时间】:2012-01-06 06:56:43
【问题描述】:

可能重复:
GetMonthName: Valid values are between 1 and 13, inclusive. Why?

以下代码:

DateTimeFormatInfo datetimeinfo = new CultureInfo("en-GB", false).DateTimeFormat;
string[] months = datetimeinfo.MonthNames;

返回 13 个成员,其中 0 是一月,13 是一个空字符串。

这是为什么?

这没什么大不了的,因为我可以删除最后一个成员,但我只是想知道这样做是否有意义。

【问题讨论】:

标签: c# datetimeformatinfo


【解决方案1】:

某些日历,尤其是 Hebrew,可以有 13 个月。这往往是在使用阴历月份的阴阳历中,然后每隔几年添加一个额外的月份,以避免年初与阳历年的变化太大。

【讨论】:

  • 但是对于希伯来文化,MonthNames 还返回 12 个“真实”月份和一个空月份...
  • @Thomas Levesque 这可能只是 MS 实现的一个“功能”。例如,将字符串转换为标题大小写 (great britain => Great Britain) 的函数在俄语中的工作方式相同,而实际上在俄语中,仅将第一个单词的首字母大写是正确的 (great britain => Great英国)。
猜你喜欢
  • 2019-03-30
  • 1970-01-01
  • 1970-01-01
  • 2014-02-02
  • 1970-01-01
  • 1970-01-01
  • 2018-06-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多