找回密码
 立即注册

QQ登录

只需一步,快速开始

graper

高级会员

45

主题

63

帖子

1348

积分

高级会员

积分
1348

活字格认证

graper
高级会员   /  发表于:2009-12-15 14:39  /   查看:6704  /  回复:0
Post by "Shrek",  09-26-2007, 11:56
-----------------------------------------------------
System.Globalization 命名空間包含下列 Calendar 的實作

GregorianCalendar 西曆
西曆 (葛利果曆法) 認識兩種 Era:B.C. (Before Christ) 或 B.C.E. (Before Common Era),以及 A.D. (拉丁文「Anno Domini」,意即「在主的年代」) 或 C.E. (Common Era)。GregorianCalendar 類別的這個實作只會識別目前的紀元 (A.D. 或 C.E.)。

在西曆中,閏年被定義為能被 4 整除而不被 100 整除的年份,然而,能被 400 整除的年份即為閏年。例如,1900 年不是閏年,但 2000 年是閏年。平年有 365 天,而閏年有 366 天。

西曆有 12 個各具 28 至 31 天的月份:一月 (31 天)、二月 (28 或 29 天)、三月 (31 天)、四月 (30 天)、五月 (31 天)、六月 (30 天)、七月 (31 天)、八月 (31 天)、九月 (30 天)、十月 (31 天)、十一月 (30 天) 和十二月 (31 天)。在閏年,二月份有 29 天,而在平年則有 28 天。


HebrewCalendar 希伯來曆法
希伯來曆法認識兩種 Era:B.C.E. (Before Common Era) 和 A.M. (拉丁文「Anno Mundi」,意即「世界的年代」)。HebrewCalendar 類別的這個實作只能辨識目前的紀元 (A.M.) 與希伯來年 5343 到 5999 (西曆中的 1583 到 2239)。

在每 19 年為一循環時,會以能被 19 整除的年份為結尾,第 3、6、8、11、14、17 和 19 年都是閏年。平年可以有 353 到 355 天,根據猶太人的節日而定。閏年可以有 383 到 385 天。

希伯來曆法在平年期間有 12 月份,而閏年期間則有 13 月份

Cheshvan 和 Kislev 中的日數依猶太節日的位置而有所變動。在閏年期間,Adar 由 30 天的 Adar Alef 和 29 天的 Adar Beit 來取代。Adar Beit 被視為閏月。Adar Alef 的最後一天和 Adar Beit 所有日子都被視為閏日。

西曆中的日期 A.D. 紀元 2001 年一月 1 日等於希伯來曆法 A.M. 紀元 5761 年的 Tevet 月第六天。


HijriCalendar 回曆
回教曆法認識一種 Era:A.H. (拉丁文 "Anno Hegirae",意即「遷徙的年代」,指的是穆罕默德從麥加的遷徙)。

在以每 30 年為一循環,且以可被 30 整除的年份結尾的年份中,第 2、5、7、10、13、16、18、21、24、26 和 29 年都是閏年。平年有 354 天,而閏年有 355 天。

回曆有 12 月份,各有 29 至 30 天

Ramadan (回教世界的齋戒月) 是按照新月觀測為根據的法令來正式開始和結束,因此,Shaban 的天數和 Ramadan 的天數會變動。

西曆中的日期 A.D. 紀元 2001 年一月 1 日大約等於回曆 A.H. 紀元 1421 年的 Shawwal 月第 6 天。

HijriCalendar 類別的這個實作藉著加減零至兩天的值以因應 Ramadan 始末之間的變動和各國家/地區之間的日期差距,來調整曆法日期。該值存放在 HijriAdjustment 屬性中。如果沒有明確設定 HijriAdjustment,則該值會自 Windows [控制台] 中的 [地區及語言選項] (或 [地區選項] 或 [地區設定]) 衍生而出,並且存放於登錄值 HKEY_CURRENT_USER\Control Panel\International\AddHijriDate 中。然而,該資訊可在 AppDomain 的存留期間變更。HijriCalendar 類別不會自動偵測系統設定值中的變更。


JapaneseCalendar 日本曆法
日本曆法,也以「和曆」曆法知名,運作方式與西曆完全一樣,只是年份和紀元不同。

日本曆法認定每個天皇的在位期間為一個紀元。目前的紀元是平成紀年,開始於西曆的 1989 年。例如,西曆的西元 2001 年即為日本曆法平成 13 年。請注意,每一個紀元的第一年又稱為「元年」(Gannen);因此,西曆 1989 年就是日本曆法的平成元年。

這個類別指派下列數字給紀元:

4 -  平成 (Heisei)   平 (H, h)   1989 年一月 8 日至現在
3 -  昭和 (Showa)  昭 (S, s)   1926 年十二月 25 日至 1989 年一月 7 日
2 -  大正 (Taisho)  大 (T, t)    1912 年七月 30 日至 1926 年十二月 24 日
1 -  明治 (Meiji)     明 (M, m)  1868 年九月 8 日至 1912 年七月 29 日

這個類別只處理自明治 1 年第九個月的第八天 (西曆的 1868 年九月 8 日) 以來的日期。雖然日本曆法在明治 6 年 (西曆的 1873 年) 從陰曆轉換為陽曆,這個實作只依據陽曆。

日本曆法中的閏年與西曆中的閏年相符。在西曆中,閏年被定義為能被 4 整除而不被 100 整除的年份,但是能被 400 整除。平年有 365 天,而閏年有 366 天。

日本曆法有 12 月份,各有 28 至 31 天


JulianCalendar 凱撒曆法
西元前 45 年 Julius Caesar 下令曆法改革,產生了稱為凱撒曆法的曆法。凱撒曆法是西曆的前身。

JulianCalendar 類別只識別目前的紀元。

與西曆不同的是,凱撒曆法將閏年定義為能被四整除的年份,並且沒有例外;因此,每 128 年即有一天的不精確。平年有 365 天,而閏年有 366 天。

就像西曆,凱撒曆法也有 12 個各具 28 至 31 天的月份:一月 (31 天)、二月 (28 或 29 天)、三月 (31 天)、四月 (30 天)、五月 (31 天)、六月 (30 天)、七月 (31 天)、八月 (31 天)、九月 (30 天)、十月 (31 天)、十一月 (30 天) 和十二月 (31 天)。在閏年,二月份有 29 天,而在平年則有 28 天。

西曆中的日期 A.D. 紀元 2001 年一月 1 日等於凱撒曆法的 A.D. 紀元 2000 年十二月的第 19 天。

目前,JulianCalendar 沒有被 CultureInfo 類別所支援的任何一個文化特性 (Culture) 使用,因此,這個類別只能用在凱撒曆法中計算日期。


KoreanCalendar 韓國曆法
韓國曆法運作方式與西曆完全一樣,只是年份和紀元不同。

KoreanCalendar 類別只識別目前的紀元。

韓國曆法中的閏年與西曆中的閏年相符。在西曆中,閏年被定義為能被 4 整除而不被 100 整除的年份,但是能被 400 整除。平年有 365 天,而閏年有 366 天。

韓國曆法有 12 月份,各有 28 至 31 天

在閏年,二月份有 29 天,而在平年則有 28 天。
西曆中的日期 A.D. 紀元 2001 年 1 月 1 日等於韓國曆法目前的紀元 4334 年 1 月的第 1 天。

TaiwanCalendar 台灣曆法(就是所謂的民国曆)
台灣曆法運作方式與西曆完全一樣,只是年份和紀元不同。TaiwanCalendar 類別只識別目前的紀元。

台灣曆法中的閏年與西曆中的閏年相符。在西曆中,閏年被定義為能被 4 整除而不被 100 整除的年份,但是能被 400 整除。平年有 365 天,而閏年有 366 天。

台灣使用的曆法有 12 月份,各有 28 至 31 天

在閏年,二月份有 29 天,而在平年則有 28 天。
西曆中的日期 C.E. 紀元 2001 年一月 1 日等於台灣使用的曆法目前紀元的 90 年一月的第一天。

ThaiBuddhistCalendar 泰國佛教曆法
泰國佛教曆法運作方式與西曆完全一樣,只是年份和紀元不同。

ThaiBuddhistCalendar 類別只識別目前的紀元。

泰國佛教曆法中的閏年與西曆中的閏年相符。在西曆中,閏年被定義為能被 4 整除而不被 100 整除的年份,但是能被 400 整除。平年有 365 天,而閏年有 366 天。

泰國佛教曆法有 12 月份,各有 28 至 31 天

在閏年,二月份有 29 天,而在平年則有 28 天。

西曆中的日期 A.D. 紀元 2001 年一月 1 日等於泰國佛教曆法目前的紀元 2544 年一月的第一天。

关于农历,可以参考:
http://www.cnblogs.com/panjiwen/archive/2006/02/04/325203.html

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部