2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

User:REEE/农历

萌娘百科,万物皆可萌的百科全书!转载请标注来源页面的网页链接,并声明引自萌娘百科。内容不可商用。
跳转到导航 跳转到搜索
文档  [查看] [编辑] [历史] [刷新]

本模板用于把2000.1.1到2029.12.31的公历日期转换为农历日期或日本旧历日期。默认格式是干支纪年、单字月份、两字日期、日期后不加“日”的格式,日后可能还会添加。

以后有时间也会慢慢录入更多年份的数据。

现行农历(“紫金历”)简介

  • 时间:以东经120度时间(北京时间)为标准时。
  • 日期分隔:子正(午夜0点)作为两日的界限。
  • 月份分隔:按照模型计算确定日月黄经相同的日期,也就是真实的朔日,作为每月的初一。
  • 节气:按照模型计算确定太阳黄经0度为春分,15度为清明,30度为谷雨,以此类推。注意节气所平分的是太阳黄经的位置,而不是一个回归年的时间;地球在远日点时公转角速度稍慢,太阳移动也较慢,因此节气分布稍微稀疏。
  • 年份分隔与闰月:冬至所在的月定为冬月(十一月)。如果两个冬月(不含)之间出现了十一个月,则冬月之后就是腊月,腊月之后是正月,正月之后是二月,以此类推。如果两个冬月之间出现了十二个月,则第一个不包含十二中气(冬至、大寒、雨水……)之一的月份是闰月。正月初一是新年,一般是冬至日后第二个朔日;如果出现闰冬月或闰腊月,那么正月初一就不再是冬至日后第二个朔日,而是第三个。不过,因为夏季地球远日,节气分布稍微稀疏,所以闰四五六月常见,闰十冬腊月极少。

日本旧历简介

  • 时间:以东经135度时间(日本标准时间)为标准时。顺便说一下,天保历是以京都当地时为标准时。
  • 日期分隔、月份分隔和节气同现行农历;不过由于时差原因,日本的朔日和节气可能比中国拖后一天(中国当日23:30是日本次日0:30)。
  • 年份分隔与闰月:冬至所在的月定为冬月(十一月),春分所在的月定为二月,夏至所在的月定为五月,秋分所在的月定为八月。如果两个定月之间出现了三个月,则第一个不包含十二中气之一的月份是闰月。在极其罕见的情况下,两个定月之间只有一个月;若严格按照旧历定义,就会有一个月莫名消失,而在前后各出现一个闰月,导致一年有十一个月和一到两个闰月,所以必须特殊处理。最近一次这种情况发生会是在2033年,夏至和秋分之间隔了三个月,秋分和冬至之间只有一个月,冬至和2034年春分之间又是三个月,称为“2033年问题”。日本学界现今认为2033年应当取消闰七月并将其改为八月,让秋分落在九月,而冬至之后闰十一月;这种处理方法刚好和现行农历一致。正月初一是新年,一般是冬至日后第二个朔日;如果出现闰冬月或闰腊月,那么正月初一就不再是冬至日后第二个朔日,而是第三个。不过,因为夏季地球远日,节气分布稍微稀疏,所以闰四五六月常见,闰十冬腊月极少。

幻想乡纪年和幻想乡元素纪年简介

从《文文。新闻》上记的发行日期和月份可以看出,幻想乡纪年不用“年”而用“季”。以1885年(明治十八年)博丽大结界展开为第零季,至2017年为第一百三十二季。

《东方紫香花》提到的元素纪年使用三种元素,分别是“三精”日月星、“四季”春夏秋冬和“五行”火水木金土;第零季是日与春与土之季,然后年份顺数,元素按照日月星、春夏秋冬、火水木金土的顺序轮回,至2017年为日与春与水之季。元素组合和干支纪年周期都是六十年,之间恰好一一对应。每到日与春与土之季,幻想乡会因结界薄弱而发生异变;最近一次是第一百二十季(2005年)发生的花之异变(东方花映冢)。

注意幻想乡大多数人类是使用公历的,旧历只在妖怪间使用。以旧历为底本的妖怪太阴历可能是也可能不是《文文。新闻》所用的历法,因为《东方香霖堂》提到妖怪太阴历把闰月称为“十三月”,而《文文。新闻》在闰月发行的期数至今尚未出现。由于妖怪太阴历信息太少,本模板暂不考虑。

参数

  • y:公历年份,默认为本年年份。
  • m:公历月份,默认为本月月份。
  • d:公历日期,默认为本日日期。注意由于并没有加入日期检查,日期与月份不匹配时可能会出现错误转换。
  • jp:jp非空时,计算日本旧历日期而非农历日期。在某些月份两个日期会有差别。
  • format:jp非空时,format为gsk则按照幻想乡纪年、日本传统月份名(闰月除外)、日期后加“日”显示日期,为elem则按照幻想乡元素纪年、日本传统月份名(闰月除外)、日期后加“日”显示日期。format未给定、或是gsk和elem之外的其他数值时,仍然按照默认格式。
  • return:return为y时,返回数字年份;为m时,返回数字月份(闰六月也返回6);为d时,返回数字日期;为l(小写L,不是大写i也不是数字1)时,是闰月则返回数字1,不是闰月则返回数字0;未给定、或是y、m、d和l之外的其他数值时,仍然返回默认的文字。

例子

数据来源

  • 农历数据:iOS 11系统日历。
  • 日本旧历数据:卡西欧精算