この記事では、この API のリファレンス ドキュメントに補足的な解説を提供します。
ペルシア暦は、ペルシア語が話されているほとんどの国/地域で使用されますが、一部の地域では異なる月の名前が使用されます。 ペルシャ暦はイランとアフガニスタンの公式カレンダーであり、カザフスタンやタジキスタンなどの地域の代替カレンダーの1つです。
注
.NET で PersianCalendar クラスとその他の予定表クラスを使用する方法については、「 予定表の操作」を参照してください。
ペルシア暦は太陽イスラム暦で、イスラム暦の年から始まり、ムハンマド(PBUH)がメッカからメディナに移行した年の622 C.E.に相当します。
ペルシア暦は太陽年に基づいており、長さは約365日です。 年は四季を経て、地球の中心から見たように、太陽が南半球から北半球に赤道を横切るように見える新年が始まります。 新年は、北半球の春の最初の日であるファルバルディーンの月の最初の日をマークします。 たとえば、2002 年 3 月 21 日の日付は、1381 Anno Persico 年の Farvardeen 月の最初の日に対応します。
ペルシア暦の最初の 6 か月間は 31 日、次の 5 か月はそれぞれ 30 日で、最後の月には共通年に 29 日、閏年に 30 日があります。 閏年とは、33 で除算した場合の残りの部分が 1、5、9、13、17、22、26、または 30 である年です。 たとえば、1370 年は閏年です。33 で割ると残りの 17 が得られます。 33 年のサイクルごとに約 8 年の閏年があります。
ペルシア語のCalendar クラスと .NET バージョン
.NET Framework 4.6 以降、 PersianCalendar クラスでは、観測アルゴリズムではなく、日照太陽天文学アルゴリズムを使用して日付を計算します。 これにより、 PersianCalendar の実装は、イランとアフガニスタン、ペルシャ暦が最も広く使用されている 2 つの国で使用されているペルシャ暦と一致します。 この変更は、.NET Framework 4.6 がインストールされている場合、.NET Framework 4 以降で実行されているすべてのアプリに影響します。
アルゴリズムが変更された結果:
- 2 つのアルゴリズムは、グレゴリオ暦で 1800 から 2123 の間の日付を変換するときに同じ結果を返す必要があります。
- 2 つのアルゴリズムは、グレゴリオ暦で 1800 より前と 2123 より後の日付を変換するときに、異なる結果を返す場合があります。
- MinSupportedDateTime プロパティの値が、グレゴリオ暦の 0622 年 3 月 21 日からグレゴリオ暦の 0622 年 3 月 22 日に変更されました。
- MaxSupportedDateTimeプロパティの値は、ペルシャ暦の 9378 年の 10 月の 10 日から、ペルシア暦の 9378 年の 10 月の 13 日に変更されました。
- IsLeapYear メソッドは、以前とは異なる結果を返す場合があります。
ペルシアカレンダー クラスを使用する
PersianCalendar オブジェクトを使用して、ペルシア暦の日付を計算したり、ペルシア暦の日付をグレゴリオ暦の日付と変換したりできます。 ペルシア暦は、ペルシア語 (アフガニスタン) や中央クルド語 (イラン) などの文化の 既定のカレンダー です。
.NET