Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
DateTime.Now / DateTime.Today
現在の日時を取得する『DateTime.Now』と、今日の日付(時刻は00:00:00)を取得する『DateTime.Today』です。
構文
// 現在の日時(ローカル時刻)を取得します。 DateTime 変数 = DateTime.Now; // 今日の日付(時刻は 00:00:00)を取得します。 DateTime 変数 = DateTime.Today; // UTC 現在時刻を取得します。 DateTime 変数 = DateTime.UtcNow;
メソッド一覧
| メンバー | 概要 |
|---|---|
| DateTime.Now | 現在のローカル日時(年月日・時分秒)を返します。 |
| DateTime.Today | 今日の日付を返します。時刻部分は 00:00:00 になります。 |
| DateTime.UtcNow | 現在の UTC 日時を返します。サーバーサイド処理やログに推奨されます。 |
| .Year / .Month / .Day | 年・月・日を整数で取得します。 |
| .Hour / .Minute / .Second | 時・分・秒を整数で取得します。 |
| .DayOfWeek | 曜日を DayOfWeek 列挙型で返します(例:DayOfWeek.Monday)。 |
サンプルコード
using System;
// 現在の日時を取得します。
DateTime 今 = DateTime.Now;
Console.WriteLine(今); // 例: 2024/01/15 14:30:45
// 今日の日付(時刻なし)を取得します。
DateTime 今日 = DateTime.Today;
Console.WriteLine(今日); // 例: 2024/01/15 0:00:00
// 各プロパティで個別に取得します。
Console.WriteLine($"年: {今.Year}");
Console.WriteLine($"月: {今.Month}");
Console.WriteLine($"日: {今.Day}");
Console.WriteLine($"時: {今.Hour}");
Console.WriteLine($"分: {今.Minute}");
Console.WriteLine($"秒: {今.Second}");
// 曜日を取得します。
Console.WriteLine($"曜日: {今.DayOfWeek}");
// 日本語で曜日を表示します。
string[] 曜日名 = { "日", "月", "火", "水", "木", "金", "土" };
Console.WriteLine($"曜日(日本語): {曜日名[(int)今.DayOfWeek]}曜日");
// UTC 時刻を取得します。
DateTime utc = DateTime.UtcNow;
Console.WriteLine($"UTC: {utc}");
概要
『DateTime.Now』と『DateTime.Today』はどちらも静的プロパティです。呼び出すたびに現在時刻を取得するため、同じ処理内で複数回使いたい場合は変数に保存してから使用してください。
ログの記録やデータベースへの保存には、タイムゾーンの影響を受けない『DateTime.UtcNow』の使用を推奨します。日時の書式を変えて文字列化するには『日時.ToString() / 日時.AddDays()』を参照してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。