历史日期换算:原文、历法与核对方法
历史日期包含两部分:文献中保留下来的原文,以及它在另一种历法中拟对应的日期。将两者一起保存,便能核查或修订换算结果,而不丢失原始信息。主要需要确定的是纪年、农历月份的身份,以及结果所采用的民用历约定。
原始日期
换算之前,应先完整抄录日期。年号纪年中的年数需要配合年号名称和政权背景;农历月份需要保留闰月标记。日可以用数字、干支名称,或两者同时表示。
| 字段 | 应保留的内容 | 重要原因 |
|---|---|---|
| 政权背景 | 朝代、国家或统治者 | 相似年号可能属于不同政权 |
| 纪年 | 完整年号或民国纪年名称 | 只有年数会产生歧义 |
| 年 | 年数及任何干支纪年标记 | 提供年代框架 |
| 农历月 | 月序或月名,包括闰月标记 | 同月序的普通月与闰月是不同的时间区间 |
| 日 | 日序及任何干支日名 | 两种写法可以互相核对 |
| 历法用语 | “旧历”“新历”、并列日期或同类表述 | 帮助确认所指的月、日体系 |
| 文献背景 | 馆藏编号、页码、铭文位置及更正 | 便于对照文献核查释读 |
残损的字或缺失的日,应在其他信息能够确定之前保持待定。只有月份的日期代表一个区间,而不是该月初一。同样,农历年份不能直接替换成公历年份数字:其起止通常落在公历年内,而不是在 一月1日。
民国时期的记录还需要作另一项区分。民国纪年以 1912 为元年,但非正式记录可能将这一年号与公历月份或农历月份搭配使用。仅凭年数不能确定月份体系。
历史对照表与民用历约定
所选参考资料必须符合换算目的。要确定历史作者所使用的日期,当时的年历或针对该时期历法的复原,比不加限制地把现代规则外推到过去更有参考价值。
| 参考资料类型 | 提供什么 | 主要需要确认的事项 |
|---|---|---|
| 当时的年历 | 某一年的印载日期 | 年份、适用地区和版本 |
| 历史日期换算表或历法复原 | 拟定的历史月、日序列 | 涵盖时期及历法假设 |
| 现代天文计算 | 在指定模型下的新月与节气 | 参考时间及将天文事件归入日期的规则 |
| 文献中的并列日期 | 作者记录的日期对应关系 | 两种历法的身份及释读的可靠性 |
换算所得的民用历日期也需要注明历法。儒略历与公历使用看似相同的月名和数字,却可能指向不同的日子。逆推公历日期是将公历规则向前延伸到其历史上采用之前的时期。
中华历法图鉴 支持公元 1 年至公元 2100 年的民用历日期。它至 1582-10-04 为止采用儒略历民用日期,随后接续公历 1582-10-15。在这一约定下,两者是连续的两天。切换时跳过十个日期标记,但日子的顺序不中断。这项软件约定并不表示中国在 1582 年采用公历,也不表示 中华历法图鉴 重现了支持范围内曾使用的每一种历史中国历法。
月首、干支日与日期分界
核查具体日之前,先确定年、月。确认该月是普通月还是闰月,再在选用的历法中找到初一。农历第 d 日是在该月初一之后经过 d − 1 天。若跨越儒略历与公历的切换,应计算实际经过的天数,而不是只对印出的日序数字做加法。
月的长度也是一项核查依据。三十日必须位于有三十天的月份。之后可以比较干支日名与该月对应位置应有的日名。由于干支周期每六十天重复,日名吻合可以支持一个拟定日期,却不能单凭它确定唯一日期。
当计算得到的新月时刻接近午夜时,参考时间就很重要。1916 年新年的新月是一个有用的分界实例:
| 参考时间 | 新月约略时刻,日期为公历 |
|---|---|
| 北京地方平太阳时,东经 116°25′ | 1916年二月3日, 23:51 |
| 东经 120° 的平太阳时 | 1916年二月4日, 00:05 |
这两个时间标记指的是同一个天文事件。历史上的新年按北京日期定在 二月3日。若计算采用另一条经线将该事件归入某一天,则会落在 二月4日。确定历史月首时,除了新月发生的瞬间,还需要知道历法采用哪一种日界。
记录结果
完整的日期说明应将原文与换算日期并列,并注明后者是儒略历、公历还是逆推公历。记录所用的年历、对照表或历法复原,包括版本信息。使用软件时,还应保存实际输入和任何影响结果的历法设置。
缺失日序的记录,在最终说明中仍应保留为月份区间。不确定的闰月标记可能留下两个候选月份。如果拟议释读或历法复原仍有疑问,应在结果旁明确指出具体的不确定之处,使暂定复原与已完全确定的日期有所区别。
抄录实例:御序中的日期
《Qinding Xieji Bianfang Shu》(《钦定协纪辨方书》)的御序,保存在 Wikisource 的四库全书文本中,以以下日期结尾:
乾隆六年十二月望日
抄录时保留这一原文,再分别提取各字段:
| 字段 | 释义 |
|---|---|
| 朝代与年号 | 清朝,乾隆年号(乾隆) |
| 年号年数 | 第六年(六年) |
| 农历月 | 第十二月(十二月),不是公历十二月 |
| 是否闰月 | 没有 閏(闰月)标记;按普通十二月释读 |
| 日名 | 望日,传统上表示农历十五日 |
这里,望日是约定的日名,不是实测的满月时刻。转换器的数字日字段应填 15,但原始抄录应保留望日,不能不作说明就改成十五日。这样可以区分文献实际写了什么,以及换算时采用了怎样的数字解释。
CiNii 目录将该序的年代标为乾隆六年(1741)。这确定的是年号年份,并非完整日期的换算。它不能证明乾隆六年的每一个农历月都落在公历 1741 年,因此不能从这个目录标签推断出“1741年十二月”或某个具体的民用历日。
已核验的民用历日期换算
原文乾隆六年十二月望日指乾隆六年、普通十二月、十五日。清代专用对照表将该月初一列为 13-07 壬辰。图例说明,“13”表示下一公历年的一月,即 1742年一月7日,而不是 1741 年。向后数十四天,得到:
| 输出历法 | 日期 |
|---|---|
| 公历 | 1742年一月21日 |
| 儒略历,采用以一月为起点的年份编号 | 1742年一月10日 |
该表记录的计算方法使用清代时期的数据,并非不考虑历史范围就套用现代规则。作为独立的相邻日期交叉核对,Harvard/Fudan CHGIS引用《Qing Gaozong Shilu》(《清高宗实录》)卷 157,将同月紧接着的丁未日列为 1742年一月22日。这支持上述换算,但并不是对该序日期的直接查询。