西暦からヒジュラ暦変換|グレゴリオ暦・ユリウス暦対応

西暦からヒジュラ暦変換|グレゴリオ暦・ユリウス暦対応

グレゴリオ暦またはユリウス暦の開始月を、Standard・参照Kuwaiti・Fatimidの算術ヒジュラ暦へ日別に変換します。

入力

グレゴリオ暦とユリウス暦を自動切替せず、選んだ規則を先発的に適用します。

正のAH年へ変換できる西暦622年以後に限定し、1暦年表示でもJDN上限を越えない安全範囲です。

選んだ月の1日から日別表を作ります。

1・2・6か月または同じ暦の翌年同月直前までを選びます。ユダヤ暦の1暦年は閏年に13か月となります。

参照Kuwaitiは当該参照ページ互換のType Iです。現行Microsoft/Unicodeの同名方式とは区別します。

使い方

  1. 入力側のグレゴリオ暦・ユリウス暦、開始年月、期間、算術方式を選びます。
  2. 日別のAH年・月名・日とJDNを確認します。
  3. 文書・宗教用途では暦元と観測方式を追加照合します。

計算式・考え方

選択した西暦を整数JDNへ変換し、方式別の年初以下となる最大AH年と月初以下となる最大月を有界探索します。

注意事項

  • 西暦からヒジュラ暦変換では、入力側をグレゴリオ暦またはユリウス暦から明示的に選び、開始年月と期間、出力する算術ヒジュラ方式を指定します。選んだ西暦月の1日から全日を走査し、対応するAH年・月名・日を一覧にします。
  • 入力暦を自動改革切替しないため、1582年10月のグレゴリオ暦とユリウス暦も別の連続した月として扱います。歴史資料がどちらの暦法を採用したか不明な場合は両方を計算し、JDNが同じ行を比較してください。
  • ヒジュラ暦元より前の西暦月は、正のAH年へ黙って負数や年0として変換しません。AH1 Muharram 1より前を含む期間はエラーとして止め、算術暦元前という独自表記を作らない設計です。
  • 2001年9月11日グレゴリオ暦はStandard方式でAH1422 Jumada al-Akhira 22へ対応する既知点として検証します。ただし歴史事件や文書の日付を宗教的意味へ結び付けるものではなく、単なる暦ラベルの対応です。
  • 参照Kuwaitiは参照サイト互換の旧Type Iであり、現在のMicrosoft/Unicode実装と名称だけが同じ場合があります。別ソフトと1日ずれたときはバグと即断せず、木曜・金曜元期と30年周期の15年目・16年目の扱いを確認してください。
  • 法的期限、旅券、査証、契約書、宗教行事へ使う場合、算術換算だけで日付を確定しないでください。発行国、宗教当局、時刻・日没境界、採用する公式暦を確認し、原本に記載された暦法を保存してください。
  • 表示行数は入力した西暦側の月長に従うため、2月は暦法と閏年規則により28日または29日、1暦年は365日または366日になります。出力側のヒジュラ月境界で表を分割せず、西暦の連続範囲を保ったままAH年・月・日の切替を各行へ示します。
  • この世界のこよみ5ページは、異なる暦を日付文字列だけで置き換えず、整数のJulian Day Number(JDN)を共通の橋として相互変換します。JDNは天文学上の連続した日番号で、同じ整数へ対応したグレゴリオ暦日、ユリウス暦日、ヒジュラ暦日、ユダヤ暦日を同じ行に並べます。
  • 日付は時刻を持たない暦日として扱います。整数JDNは正午を基準とする名称ですが、本ツールの表は一日単位のcivil date対応を示し、時刻、タイムゾーン、夏時間、経度、日の出入りを計算しません。Julian Dateの小数部やUnix秒への変換とは用途が異なります。
  • グレゴリオ暦とユリウス暦は、歴史上の導入日より前や廃止後にも各閏年規則を数学的に延長するproleptic calendarです。1582年の改暦や各国固有の採用日を自動推測せず、両暦を別列で同時に表示します。史料の表記は地域の採用史と照合してください。
  • 西暦の紀元前は利用者へ正の年数で示し、年0を入力させません。内部計算だけは紀元前1年を天文学的年0へ写して日付を連続させます。紀元前の日付を引用するときは、BC/BCE方式か天文学的年番号かを明記しないと1年ずれるため注意が必要です。
  • 『1か月』『2か月』『半年』は、開始月1日から選んだ暦の1・2・6か月後の月初直前までを表示します。『1暦年』は同じ意味の月が翌年に始まる直前までで、ユダヤ暦の閏年には13か月・最大385日を含みます。単純に365日や12か月へ固定しません。
  • 結果は最大385行、6列に制限します。行数、列ID、文字セルのUTF-16長、制御文字、入力整数、選択値、暦元、JDN上限を検査し、範囲外を端へ丸めたり、存在しない月日を翌月へ繰り越したりしません。NaN、Infinity、小数年、未知の方式はエラーとして止めます。
  • 曜日は端末の言語設定やタイムゾーンへ渡さず、整数JDNの7日周期から月曜日〜日曜日を直接決めます。同じJDNを持つ各暦日は必ず同じ曜日になるため、両西暦の表示が異なる場合も曜日列で対応を検算できます。ただし史料中の曜日名や一日の開始時刻まで復元する機能ではありません。
  • すべての結果セルを文字列として安全に描画し、日付の先頭ゼロ、AH・AM・紀元前表示、月名、年型を保ちます。TSVコピー後は表計算ソフトの自動日付変換に注意し、JDN列と暦法列を残して再照合してください。先頭が数式記号になるセルはTSV式注入対策も行います。
  • 計算は利用者のブラウザー内だけで完了します。JavaScript Date、現在時計、外部API、fetch、XMLHttpRequest、WebSocket、CDN上の暦ライブラリ、位置情報、Cookie保存、ファイルアップロードを使用しません。閲覧地域や端末タイムゾーンで結果が変わりません。
  • ページ先頭はcalculator-firstとして、方式・年月・期間、計算ボタン、結果表を置き、その下へ計算基準、適用範囲、方式差、歴史上の注意、FAQを掲載します。375px幅では表領域だけを横スクロールさせ、暦名やJDN列を非表示にせず、既存サイトのフォントと余白を継承します。
  • 日没から日付が始まる宗教暦では、civil date一日との対応は場所と時刻により境界が変わります。本表は日付ラベルの算術対応を示し、日没後の瞬間を自動的に翌宗教日へ切り替えません。礼拝、祭日、法的期限には地域の宗教団体や公的資料を優先してください。
  • 正常例、暦元または最大年の境界例、範囲外の不正例を各ページ定義へ固定します。Python整数実装、独立oracle、ブラウザーJavaScriptの結果を行数・代表セル・往復変換で照合し、1024pxと375pxの実ブラウザでも全ページを再検査します。
  • builderはWordPress本文、追加CSS、追加JavaScript、ローカルpreview、manifest、SPEC、QAの元定義をローカルへ保存するだけです。WordPressの下書き作成、既存記事更新、公開操作は行わず、ユーザーから明示的な公開指示があるまでready-localとして管理します。
  • DershowitzとReingoldの整数暦算法、US Naval ObservatoryのJDN説明、各方式の一次・学術資料を照合しました。監査用URLと節名はbuilderメタデータに固定し、実行時には参照先へ接続しません。今回の式と説明の最終確認日は2026年7月15日です。
  • 算術・固定暦の学習と照合用です。観測暦、公式宗教日程、法的期限、古代の歴史日を自動確定しません。

よくある質問

1582年以前はどの西暦を選びますか?

史料が採用した暦法を確認し、不明ならグレゴリオ・ユリウス双方を比較してください。

AH元年より前も負の年で出せますか?

出しません。正のAH年だけを扱い、暦元前を含む期間は拒否します。

1日の途中でヒジュラ日が変わりますか?

宗教上は日没開始です。本表は時刻なしのcivil date対応なので、日没後は別途判断してください。

入力した暦法、年月、方式、期間と生成結果はこの端末のブラウザー内だけで処理し、外部へ送信・保存しません。