0

01/05/2012(MM/dd/yyyy) のような文字列値を取得し、日時に変換する必要があります

string s="01/05/2012";
datetime dt=convert.todatetime(s);

現在、dt 値は 2012 年 1 月 5 日ですが、2012 年 1 月 5 日の dt 値を取得する必要があります。値を取得する方法について教えてください。

ありがとうございます

4

1 に答える 1

1

オブジェクトを正しく作成していますDateTime。DateTime の内部表現を見ているだけです。出力方法は、メソッドに指定したフォーマット文字列によって異なりますToString。すなわち:

class Program
{
    static void Main(string[] args)
    {
        string s = "01/05/2012";
        DateTime dt = Convert.ToDateTime(s);
        Console.WriteLine(dt.ToString("MM/dd/yyyy"));
        Console.ReadLine();
    }
}

このMSDNページをDateTime構造で見ると

上記のリンクから私のハイライト

DateTime 値とその文字列表現

内部的には、すべての DateTime 値は、0001 年 1 月 1 日午前 0 時 12:00:00 から経過したティック数 (100 ナノ秒間隔の数) として表されます。ユーザー インターフェイス要素に表示されるとき、またはファイルに書き込まれるときに表示されます。DateTime 値の外観は、書式設定操作の結果です。フォーマットとは、値をその文字列表現に変換するプロセスです。

日付と時刻の値の外観は、文化、国際標準、アプリケーションの要件、個人の好みなどの要因に依存するため、DateTime 構造体は、ToString メソッドのオーバーロードによって日付と時刻の値をフォーマットする際に非常に柔軟です。デフォルトの DateTime.ToString() メソッドは、現在のカルチャの短い日付と長い時間のパターンを使用して、日付と時刻の値の文字列表現を返します。

于 2012-11-20T04:02:02.803 に答える