年、月、日参数描述了一个不可表示的DateTime



我偶然发现了一个例外:System.ArgumentOutOfRangeException: Year, Month, and Day parameters describe an un-representable DateTime。当我在应用程序的DatePicker中选择日期31 of May, 2015时,我得到了异常。在谷歌上搜索之后,我在SO上找到了这篇文章,这个答案似乎描述了我遇到的例外。答案与二月有关,但考虑到闰年。为什么它会在2015年4月31日崩溃,而不是我试过的其他日期?它发生在Android 4.4.4和5.0.2上。请帮帮我!

DatePicker使用基于0的月份:

monthOfYear从0开始的第一个月。

而DateTime是从1开始对月份进行编号:

月月份(1到12)。

所以当从DatePicker设置DateTime时,你需要添加1。4月、6月、9月和11月只有30天,所以如果不进行这种转换,5月31日(以0为基础的4)将以4月31日结束,这是一个无效的日期。

相关内容

  • 没有找到相关文章

最新更新