にしし ふぁくとりー:西村文宏 個人サイト

No.4092 - 今日のひとことログ

更新

■LOG No.4092

にししふぁくとりーHOMEに掲載している「今日のひとこと」の過去ログ(掲載履歴)です。 RSS

No.4092 〔1035文字〕 📗

日付を入力するだけで「その日が祝日かどうか」を判定する処理はそんなに難しくないだろうと高をくくっていたのだが、「振替休日」と「国民の休日」という2種類の臨時休日の判定が意外と複雑なので、単に日付を指定するだけではその日が祝日なのかどうかは分からないことが分かった。少なくとも「調べたい日の直前の日曜日」から「調べたい日の翌日」までの毎日が休日なのか平日なのかを調べないと特定できない。「振替休日」は、祝日が日曜日と重なった場合に「次の平日」が休日になる制度なので、ほとんどの振替休日は月曜日になるのだが、5月の連休時だけは祝日が連続するので、火曜日や水曜日が振替休日になる可能性がある。なので、祝日リストを持っているだけではダメで、「調べたい日の直前の日曜日」から当日までの状況を調べてからでないと「今日が休日なのか平日なのか」が特定できない。「国民の休日」は祝日と祝日に挟まれた1日が休日になる規則だが、祝日と祝日に挟まれた1日が日曜日の場合には特に何もないし、最初の祝日が日曜日の場合には自分自身(当日)は振替休日になるだけであって国民の休日ではない。なので、調べたい日の前日と翌日が祝日かどうかを判定してから、その日が日曜日または振替休日ではないことを確認する必要がある。昔はこの規則によって5月の連休が構成されていたのだが、今では5月の連休は本当に「3連続の祝日」になっているのでこの規則は使われていない。しかし、数年に1回だけ、この規則によって9月にシルバーウィークができる(次回は2026年だ)。なお、今のところの祝日規則上では発生しなさそうだが、『振替休日と祝日に挟まれた平日1日』が「国民の休日」になるのかどうかがよく分からない。将来的にそういう状況が発生するよう祝日が新設されたり移動されたりしたら、またカレンダー生成プログラム製作者が苦労しそうである。いや、苦労するかどうかは分からないが、少なくともプログラムはアップデートする必要があるだろう。昨年と今年には臨時に祝日が移動する法律ができて一時的に祝日が変化したが、このような臨時移動に対応できるカレンダープログラムはそうそうない気がする。祝日リストを編集できるプログラムはあるだろうが、「ある特定の年だけは異なる祝日リストを使う」というような状況を事前に想定しているプログラムはさすがになかったのではないか。そういうのを今作っているのだが、なかなか手間が掛かる。祝日規則はシンプルにして頂きたい。
2021年4月
123
45678910
11121314151617
18192021222324
252627282930
2021年5月
1
2345678
9101112131415
16171819202122
23242526272829
3031
2021年6月
12345
6789101112
13141516171819
20212223242526
27282930

Powered by てがろぐ Ver 3.7.0

--- 当サイト内を検索 ---