ヘッダー
C# サンプル集
 

日付のたし算

2020/7/19

→Visual Basic のサンプルに切り替える

 

40日後を求める

DateTime sourceDate = new DateTime(2024, 8, 20);
DateTime result = sourceDate.AddDays(40);

System.Diagnostics.Debug.WriteLine(result.ToString(@"yyyy\/MM\/dd"));

実行すると 2024/09/29 と表示されます。→ Debug.WriteLineが表示される場所

 

 

60日と8時間50分23秒後 を求める 

DateTime sourceDate = new DateTime(2024, 8, 20);
TimeSpan span = new TimeSpan(60, 8, 50, 23); //60日と8時間50分23秒を表す期間
DateTime result = sourceDate + span;

System.Diagnostics.Debug.WriteLine(result.ToString(@"yyyy\/MM\/dd HH\:mm\:ss"));

実行すると 2024/10/19 08:50:23 と表示されます。→ Debug.WriteLineが表示される場所

 

 

40ヵ月後を求める

DateTime sourceDate = new DateTime(2024, 8, 20);
DateTime result = sourceDate.AddMonths(40);

System.Diagnostics.Debug.WriteLine(result.ToString(@"yyyy\/MM\/dd"));

実行すると 2027/12/20 と表示されます。→ Debug.WriteLineが表示される場所

 

次の例は 2024/1/31 の1ヶ月後の日付を求めます。

2月には31日がないので結果は29日になる点がポイントです。

DateTime sourceDate = new DateTime(2024, 1, 31);
DateTime result = sourceDate.AddMonths(1);

System.Diagnostics.Debug.WriteLine(result.ToString(@"yyyy\/MM\/dd"));

実行すると 2024/02/29 と表示されます。→ Debug.WriteLineが表示される場所

 

 

40年後を求める

DateTime sourceDate = new DateTime(2024, 8, 20);
DateTime result = sourceDate.AddYears(40);

System.Diagnostics.Debug.WriteLine(result.ToString(@"yyyy\/MM\/dd"));

実行すると 2064/08/20 と表示されます。→ Debug.WriteLineが表示される場所

 

次の例では 2024/2/29 の1年後の日付を求めます。

2025年の2月には29日がないので結果は28日になる点がポイントです。

DateTime sourceDate = new DateTime(2024, 2, 29);
DateTime result = sourceDate.AddYears(1);

System.Diagnostics.Debug.WriteLine(result.ToString(@"yyyy\/MM\/dd"));

実行すると 2025/02/28 と表示されます。→ Debug.WriteLineが表示される場所

 

 

40時間後を求める

DateTime sourceDate = new DateTime(2024, 8, 20);
DateTime result = sourceDate.AddHours(40);

System.Diagnostics.Debug.WriteLine(result.ToString(@"yyyy\/MM\/dd HH\:mm\:ss"));

実行すると 2024/08/21 16:00:00 と表示されます。→ Debug.WriteLineが表示される場所