はじめに
期限日までの日数を計算したい状況がありました。
C#で簡単に計算できるので、忘備録としてアップします。
プログラム例
TimeSpan span = new DateTime(2025,5,3) - DateTime.Now;
Console.WriteLine(span.Days.ToString()); // 2025/05/03と今日との日数差が表示される
これを使って定年まであと何日ぐらいか計算してみようかな。
意外と短そうだぞ!
上記のサンプルに問題がありました。
一日カウントが短くなってしまいます。24hを切ると TimeSpan.Days が 0 になってしまい、一日前になるとあと0日になってしまいます。
なので、こんな感じでごまかしました。
TimeSpan span = new Datetime(2025,5,3) - DateTime.Now;
int days = span.Days;
if(span.Hours > 0)
{
days += 1;
}
Console.WriteLine(days.ToString());
このコードを使って「あと何日」アプリケーションを作りました。