问:为什么 iOS 自带的日历中 1900 年、 1800 年、 1700 年 2 月有 29 天?

2015-08-22 01:37:27 +08:00
 beimenjun
今天晚上在研究各种日历纪年什么的, iOS 系统自带的日历 App,采用的应该是类似 Proleptic Gregorian calendar ,但是 1900 年、 1800 年、 1700 年(按照算法,这些日期应该都在 1582 年后改的 Gregorian calendar 算做平年)的 2 月在年览视图上都有 29 天,点击进去的月览图中显示天数只有 28 天,这是为什么? 1600 年的 2 月在年览视图上也是 29 天,但是月览视图上则是正常的闰年 29 天。

可能有用的链接:
http://superuser.com/questions/481496/why-are-excel-weekdays-wrong-for-1900
http://www.joelonsoftware.com/items/2006/06/16.html

几个相关 Wiki 的链接:
1. Gregorian calendar :
https://en.wikipedia.org/wiki/Gregorian_calendar
2. Leap year :
https://en.wikipedia.org/wiki/Leap_year

关于问题的一些参考图:
1.年览视图:

2.月览视图:
4418 次点击
所在节点    问与答
6 条回复
laiyingdong
2015-08-22 02:17:41 +08:00
但是 2100 年是没有 2 月 29 日的。 iOS 的日历 估计之前的部分是偷懒还是故意的 但是我觉得穿越者要带 Apple 产品回过去的时候真的要小心啊 !!!!

还有 看到日历里还可以有平成 xxx 年 就想哪天天皇挂了之后 以后换元号的话就会出现不存在的年份了
Valyrian
2015-08-22 08:28:35 +08:00
85 年后必须换手机了
ljbha007
2015-08-22 09:30:29 +08:00
点进去之后又是正确的 两个界面不是一个人写的
beimenjun
2015-08-22 12:40:39 +08:00
@Valyrian 其实往后的都没发现问题, 2100 年确实是平年。

@ljbha007 你可以看年览视图, 3 月 1 日其实标的位置和 2 月 9 日一样,没问题的。
shmilyin
2015-08-23 00:46:35 +08:00
能被 100 整除 不能被 400 整除的?
beimenjun
2015-08-23 02:32:32 +08:00
@shmilyin 能被 100 整除 不能被 400 整除的是平年。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/215035

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX