【C#】DateTime.ParseExact メソッドとは

DateTimeクラスとは

DateTimeクラスは、日時(日付)を扱うときに使用するクラスです。

現在の日時を取得したり、フォーマットを指定して日時の文字列に変換して表示することなどができます。

 

DateTime.ParseExact メソッドとは

DateTime.ParseExact メソッドは、日時の文字列の書式(フォーマット)を指定してDateTime型に変換することができます

※文字列形式の書式は、指定した書式と完全に一致する必要があり、それ以外の場合は、例外がスローされます。

■公式ドキュメント
https://docs.microsoft.com/ja-jp/dotnet/api/system.datetime.parseexact?view=net-5.0

 

ParseExactメソッドで文字列をDateTime型に変換する方法

DateTime.ParseExact(変換したい文字列, フォーマット, 書式情報)

第1引数に文字列を指定し、第2引数にフォーマットを指定します。

第3引数にカルチャ固有の書式情報を指定します(通常は「null」を指定すれば問題ありません)。

 

サンプルコード

using System;

namespace c_parseexact
{
    class Program
    {
        static void Main(string[] args)
        {
            string receptionTime = "2021/06/11 12:34:56"; // 文字列

            string format = "yyyy/MM/dd HH:mm:ss"; // フォーマット

            DateTime dateTime = DateTime.ParseExact(receptionTime, format, null);

            Console.WriteLine(dateTime);
        }
    }
}

実行結果:

2021/06/11 12:34:56

上記のように、ParseExactメソッドを使用することで、日時の文字列の書式(フォーマット)を指定してDateTime型に変換することができます。

 

DateTime.TryParseExact メソッドもある

文字列をDateTime型に変換する方法として、ParseExactメソッドの他にDateTime.TryParseExact メソッドがあります。

DateTime.TryParseExact メソッドは、指定した文字列形式の日付と時刻を等価のDateTimeの値に変換します

詳しくは、以下の記事を参考ください。

【C#】DateTime.TryParseExact メソッドとは

2021.06.12

 

DateTime.ParseExactとDateTime.TryParseExact(違いと使い分け)

DateTime.ParseExactとDateTime.TryParseExactの違いと使い分けに関しては、以下の記事を参考ください。

【C#】DateTime.ParseExact VS DateTime.TryParseExact(違いと使い分け)

2021.06.13

 

日時の差分を求める方法

以下の記事では日時の差分を求める方法について解説しています。

詳しくは以下の記事を参考ください。

【C#】日時の差分を求める(TimeSpan、Days)

2021.04.08

 

おすすめ書籍・Udemy

■C#を学習し始めた方向け
やさしいC 第3版 (「やさしい」シリーズ)

1週間でCの基礎が学べる本

確かな力が身につくC「超」入門 第2版 (Informatics&IDEA)

■C#をある程度学習した方向け
基礎からしっかり学ぶCの教科書 改訂新版 (マイクロソフト関連書)

独習C 新版

Effective C 6.0/7.0

 

■Udemyのおすすめ講座①
C#初心者が最初に身に着けるべき30の文法

■Udemyのおすすめ講座②
初心者でも最速でシゴトに使えるC#!