C#で現在日付を取得する方法|DateTime.Now・Today・UtcNowの使い方

  • 作成日 2021.01.27
  • 更新日 2026.06.11
  • C#
C#で現在日付を取得する方法|DateTime.Now・Today・UtcNowの使い方

C#で現在日付や現在時刻を取得する方法を解説します。DateTime.Now、DateTime.Today、DateTime.UtcNowの違いや使い分け、文字列への変換方法、日付フォーマットの指定方法までサンプルコード付きで紹介します。

環境

  • OS windows10 pro 64bit
  • Microsoft Visual Studio Community 2019 Version 16.7.1

DateTime.Now使い方

DateTime.Nowを使用すると、現在日時を取得するが可能です。

以下は、現在日時を取得して、ToStringでフォーマットを指定して表示するコードとなります。

using System;
using System.IO;

namespace testapp
{
    class Program
    {
        static void Main(string[] args)
        {

            DateTime now = DateTime.Now;

            Console.WriteLine(now.ToString("d"));
            // 2020/11/12

            // フォーマットを指定
            Console.WriteLine(now.ToString("yyyy年MM月dd日"));
            // 2020年11月12日

            // 時刻まで取得
            Console.WriteLine(now);
            // 2020/11/12 11:34:47

        }
    }
}

DateTime.Todayで現在日付のみ取得する

現在の日付のみ取得したい場合は、DateTime.Todayを使用します。

DateTime today = DateTime.Today;

Console.WriteLine(today);
// 2026/06/11 00:00:00

時刻部分は常に00:00:00になります。

DateTime.UtcNowでUTCを取得する

サーバー間で時刻を扱う場合は、UTCを利用することが推奨されます。

DateTime utc = DateTime.UtcNow;

Console.WriteLine(utc);

タイムゾーンの影響を受けない世界標準時を取得できます。

日付を文字列として出力する

ToStringを利用すると任意の形式で表示できます。

DateTime now = DateTime.Now;

Console.WriteLine(now.ToString("yyyy/MM/dd"));
Console.WriteLine(now.ToString("yyyy-MM-dd HH:mm:ss"));
Console.WriteLine(now.ToString("yyyy年MM月dd日"));

年月日を個別に取得する

DateTime now = DateTime.Now;

Console.WriteLine(now.Year);
Console.WriteLine(now.Month);
Console.WriteLine(now.Day);

年・月・日を個別に利用したい場合に便利です。

DateTime.NowとTodayの違い

プロパティ取得内容
DateTime.Now現在の日付と時刻
DateTime.Today現在の日付(時刻は00:00:00)
DateTime.UtcNowUTC(協定世界時)

参考リンク