首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ChineseLunisolarCalendar到GregorianCalendar无效日期

ChineseLunisolarCalendar到GregorianCalendar无效日期
EN

Stack Overflow用户
提问于 2017-11-20 23:06:03
回答 1查看 168关注 0票数 1

我试着计算中国任何一年的“中秋节”公共假日。但是这个日期在一些年内是无效的,我使用了维基百科文档(月8日第15天)。

代码语言:javascript
复制
var chineseCalendar = new ChineseLunisolarCalendar();
var midAutumnFestival = chineseCalendar.ToDateTime(year, 8, 15, 0, 0, 0, 0);

2017年和2020年的日期是无效的,有什么问题吗?

代码语言:javascript
复制
Calculated Date | Correct Date
2020.09.02      | 2020.10.01
2017.09.05      | 2017.10.04
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-20 23:31:19

2017年和2020年是飞跃月。

https://www.chinesegenderchart.info/leapmonth.php

2017年第6个月跃升

2020年跃进第四个月

现在看看下面的文档(https://msdn.microsoft.com/en-us/library/system.globalization.chineselunisolarcalendar%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396)

闰月可以发生在一年中的任何一个月之后。例如,GetMonth方法返回一个介于1到13之间的数字,该数字指示与指定日期关联的月份。如果在一年的第八个月和第九个月之间有一个闰月,那么GetMonth方法将返回第八个月的8个月、第八个月的9个月和第九个月的10个月。

基于上述文档,当你查询2017年和2020年的第8个月时,你必须要求9个作为一个月,代表第8个月。

如下所示:

代码语言:javascript
复制
var chineseCalendar = new ChineseLunisolarCalendar();
var midAutumnFestival = chineseCalendar.ToDateTime(year, 9, 15, 0, 0, 0, 0);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47402606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档