分かりやすく、使いやすく。

2 個の日付の差の日数を計算する方法

スポンサーリンク

C# で 2 個の日付の差の日数(期間)を計算するサンプルコードです。 DateTime 型のオブジェクトを引き算した後、 TotalDaysで 2 つの日付の差を取得することができます。 2 つの日付が同じ場合は 0 が返されます。

C#(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
// 2018年1月1日
DateTime dateFrom = new System.DateTime(2018, 1, 1);
 
// 2018年1月1日
DateTime dateTo = new System.DateTime(2018, 1, 1);
 
// 日数を計算(同じ日の場合は 0)
double interval = (dateTo - dateFrom).TotalDays;
 
// 0 を出力
System.Diagnostics.Debug.WriteLine(interval); 
C#(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
// 2018年1月1日
DateTime dateFrom = new System.DateTime(2018, 1, 1);
 
// 2018年2月1日
DateTime dateTo = new System.DateTime(2018, 2, 1);
 
// 日数を計算(2018年1月1日から2018年2月1日の日数は 31)
double interval = (dateTo - dateFrom).TotalDays;
 
// 31 を出力
System.Diagnostics.Debug.WriteLine(interval); 
C#(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
// 2018年1月1日
DateTime dateFrom = new System.DateTime(2018, 1, 1);
 
// 2019年1月1日
DateTime dateTo = new System.DateTime(2019, 1, 1);
 
// 日数を計算(2018年1月1日から2019年1月1日の日数は 365)
double interval = (dateTo - dateFrom).TotalDays;
 
// 365 を出力
System.Diagnostics.Debug.WriteLine(interval); 

尚、過去の日付に戻る場合はマイナスの数値が返されます。

C#(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
// 2018年1月1日
DateTime dateFrom = new System.DateTime(2018, 1, 1);
 
// 2017年12月31日
DateTime dateTo = new System.DateTime(2017, 12, 31);
 
// 日数を計算(2018年1月1日から2017年12月31日の日数は -1)
double interval = (dateTo - dateFrom).TotalDays;
 
// -1 を出力
System.Diagnostics.Debug.WriteLine(interval); 
C#(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
// 2018年1月1日
DateTime dateFrom = new System.DateTime(2018, 1, 1);
 
// 2017年12月1日
DateTime dateTo = new System.DateTime(2017, 12, 1);
 
// 日数を計算(2018年1月1日から2017年12月1日の日数は -31)
double interval = (dateTo - dateFrom).TotalDays;
 
// -31 を出力
System.Diagnostics.Debug.WriteLine(interval); 
スポンサーリンク
スポンサーリンク