【发布时间】:2011-08-24 21:46:54
【问题描述】:
我不小心将 0 传递给了DateTimeFormatInfo 的GetMonthName 方法:
DateTimeFormatInfo info = new DateTimeFormatInfo();
var monthName = info.GetMonthName(0);
并收到带有以下错误消息的System.ArgumentOutOfRangeException:有效值介于 1 和 13 之间。
传入 1 到 12 会返回“一月”到“十二月”,但传入 13 会返回一个空字符串。
我知道为什么月份数字不是零索引的,但是第 13 个月是干什么用的?
【问题讨论】:
-
纯属猜测,但农历(例如犹太历)每隔这么多年就会插入一个闰月,因为月份要短得多。
-
哦,如果是第 13 个月的 13 号星期五,请不要打开你的电脑。
-
@leppie 请注意,日历和日期是一个滑坡,所以你的“有趣”...当心,这里有龙 :)
-
@Lasse V. Karlsen:我倾向于避免任何包含“posix time”字样的对话;p
-
显然是在被低估的十二月。
标签: c# asp.net datetime datetimeformatinfo