C# で現在の年を取得する

Syed Hassan Sabeeh Kazmi 2024年2月15日
  1. C#DateTime.Year プロパティを使用して現在の年を取得する
  2. C#DateTime.Now プロパティを使用して現在の年を取得する
  3. C#DateTime.Today プロパティを使用して現在の年を取得する
  4. C#DateTime.UtcNow プロパティを使用して現在の年を取得する
C# で現在の年を取得する

このチュートリアルでは、実行時にプログラムによって C# で現在の年を取得する方法について説明します。 1つの方法は、.Net フレームワークの DateTime.Year プロパティを使用して DateTime オブジェクトから Year コンポーネントを取得することです。

System 名前空間には、System.Int32 データ型を返す DateTime プロパティがあります。 DateTime.NowDateTime.TodayDateTime.Year、または DateTime.UtcNow を使用して、C# で現在の年を取得できます。

C#DateTime.Year プロパティを使用して現在の年を取得する

DateTime プロパティからオブジェクトを作成することにより、グレゴリオ暦の DateTime インスタンスの年を返します。 インスタンスによって表される日付の年コンポーネントを取得します。特定のカレンダーを使用して年を取得するには、GetYear メソッドを呼び出して、System.Globalization 名前空間を使用する必要があります。

DateTime 構造体の任意の有効なオブジェクトは、カスタマイズ可能なデフォルト値 01/01/0001 00:00:00 で現在の年を与えることができます。 DateTime 構造体をオーバーロードして日付操作を簡単にすることができ、parse() メソッドを使用して有効な文字列を DateTime オブジェクトに変換できます。

using System;
using System.Windows.Forms;

namespace current_year {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void label1_Click(object sender, EventArgs e) {}

    private void button1_Click(object sender, EventArgs e) {
      DateTime current_year = DateTime.Now;
      string year = current_year.Year.ToString();
      label1.Text = year;
    }
  }
}

出力:

DateTime.Year プロパティを使用して現在の年を取得する

DateTime オブジェクトは、日時オブジェクトの設定された年に関するデータを取得するのに役立つさまざまなプロパティを提供します。 さらに、日付の目的の形式を提供するために指定されたさまざまな指定子が C# で使用できます。 短い日付、長い日付、および月/年。

C#DateTime.Now プロパティを使用して現在の年を取得する

年と月の両方のプロパティをシステムの現在の日付からの整数として含む DateTime オブジェクトを返します。 string curr_date = DateTime.Now.ToString(); のようなものを使用できます。 またはより具体的には、string cur_year = DateTime.Now.Year.ToString(); C# でシステムから現在の年を取得します。

ただし、この方法には問題があります。 最初の操作が 12 月 31 日 23.59.59.999 に実行された場合、これは非常にまれですが、1 月 1 日にすでに 2 番目の操作が実行される可能性があり、現在の月は 12 月 となり、 現在の年を年号としていますが、これは正しくありません。 この場合、DateTime を変数に格納し、後で DateTime _var = DateTime.Now; のように操作を実行できます。 string cur_year = _var.Year.ToString(); のような操作を実行できます。

DateTime プロパティの月と年を含む文字列値の形式を設定するには、DateTime.Now.ToString("MMMM yyyy") アプローチを使用するか、必要に応じてカスタマイズします。

using System;
using System.Windows.Forms;

namespace current_year {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void label1_Click(object sender, EventArgs e) {}

    private void button1_Click(object sender, EventArgs e) {
      label1.Text = DateTime.Now.Year.ToString();
    }
  }
}

出力:

Year: 2022
Image: https://asset.cloudinary.com/dicdyo83o/292bd34e83db5bfa4362da920ace5bf9

C#DateTime.Today プロパティを使用して現在の年を取得する

DateTime.Today プロパティを使用すると、現在の年が yyyy 形式で表示されます。 DateTime プロパティは System に属しているため、西暦 0001 年または西暦 9999 年 12 月 32 日 (C.E.) までのグレゴリオ暦の任意の年を取得できます。

DateTime プロパティのオブジェクトを作成し、Console.WriteLine("Today's date: {0}" 、obj.Today); // または年コンポーネント "obj.Year". obj.AddYears(4);.

日付フォーマット文字列は、標準またはカスタムのいずれかで、2つ以上の文字で構成されるフォーマット操作の結果の日付のテキスト表現を定義します。 obj.ToString("here..."); では、短い日付パターンには d を、長い日付パターンには D を、完全な日時パターンには F を使用できます。

using System;
using System.Windows.Forms;

namespace current_year {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void label1_Click(object sender, EventArgs e) {}

    private void button1_Click(object sender, EventArgs e) {
      DateTime _current = DateTime.Today;
      label1.Text = _current.ToString("yyyy");
    }
  }
}

出力:

Year: 2022
Image: https://asset.cloudinary.com/dicdyo83o/23f8f56538087e8ac05de862ddcf36eb

Parse メソッドを使用して、日付または現在の年の文字列表現をそれに相当する DateTime に変換するもう 1つの方法があり、日付はミドル エンディアンの順序でコンソールに出力されます。

C#DateTime.UtcNow プロパティを使用して現在の年を取得する

各タイム ゾーンには異なる現地時間があり、タイム ゾーンに関する混乱を避けるために、夏時間によってさらに修正されることがよくあります。 ここで UTC が役に立ちます。DateTime.UtcNow を使用すると、C# で協定世界時と年を取得できます。 UTC は現地時間にバイアス (UTC 時間と現地時間の差) を加えたもので、スクラッチでコーディングするか、事前定義されたシステムの DateTime.UtcNow プロパティを使用できます。

ToSting("o") のような形式は、DateTime 値からタイムゾーン情報を取得でき、このメソッドを使用するのと同等の方法です。 構造体として、DateTime はクラス インスタンスよりも int に似ています。これは、ケースの年のみを生成し、そのコンストラクターは可能な引数を検証するのに十分なほどインテリジェントです。

using System;
using System.Windows.Forms;

namespace current_year {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void label1_Click(object sender, EventArgs e) {}

    private void button1_Click(object sender, EventArgs e) {
      DateTime _current = DateTime.UtcNow;
      label1.Text = _current.ToString("yyyy");
    }
  }
}

出力:

Year: 2022
Image: https://asset.cloudinary.com/dicdyo83o/e47d35e37f20469ef375e2f9c2ca86cf

UtcNow プロパティはグリニッジ標準時を表し、現在のコンピューター構成のタイム ゾーンに依存しないことを常に覚えておいてください。 このメソッドを使用して DateTime キャッシュを最適化すると、過度の時間クエリが防止されるため可能です。

このチュートリアルでは、さまざまな目的を満たすために C# で現在の年を取得する方法を学びました。 DateTime オブジェクトは、システムの日付と時刻に関する情報を収集したり、特定の C# アプリケーション要件のカスタム日付を設定したりできます。

Syed Hassan Sabeeh Kazmi avatar Syed Hassan Sabeeh Kazmi avatar

Hassan is a Software Engineer with a well-developed set of programming skills. He uses his knowledge and writing capabilities to produce interesting-to-read technical articles.

GitHub

関連記事 - Csharp DateTime