string mydate = "2017-08-03";
DateTime date = DateTime.ParseExact(mydate, "dd/MM/yyyy", null);
ためしかし、私は得る:DateTime.ParseExact文字列
String was not recognized as a valid DateTime.
は、どのように私は上記の形式でのDateTimeとして文字列をフォーマットすることができますか?
string mydate = "2017-08-03";
DateTime date = DateTime.ParseExact(mydate, "dd/MM/yyyy", null);
ためしかし、私は得る:DateTime.ParseExact文字列
String was not recognized as a valid DateTime.
は、どのように私は上記の形式でのDateTimeとして文字列をフォーマットすることができますか?
これを試してください。mydate変数の日付形式を指定する必要があります。
DateTime date = DateTime.ParseExact(mydate, "yyyy-MM-dd", null);
と、日付のフォーマットを 'dd/MM/yyyy'にしたいのですか? –
次に、ToString()メソッドdate.ToString( "dd/MM/yyyy")を使用できます。 したがって、ParseExactを使用して日付オブジェクトを初期化します。別の形式を出力するにはToStringを使用します。 – Verthosa
何をやっているように見えることはstring
1でのフォーマットを解析し、別の形式でフォーマットされたstring
を返すようにしようとしています。
このシナリオでは、入力と出力は両方とも文字列で、DateTime
オブジェクト形式は現在のカルチャによって管理されています。何をしたい
は
string mydate = "2017-08-03";
mydate = DateTime.ParseExact(mydate, "yyyy-MM-dd", null).ToString("dd/MM/yyyy");
ですこれはinput
が戻った文字列への出力を提供している.ToString("dd/MM/yyyy")
を呼び出すのフォーマットを提供DateTime.ParseExact
方法を実行してやっています。
MSDN Refereces:
あなたの文字列が使用している場合は - を日付部分の区切りとして、あなたのフォーマット文字列は、日付部分の区切りとセットと同じ文字を使用する必要がありますあなたの入力文字列と同じ順序でMMとyyyyを入力してください。 – Steve
'DateTime'は*フォーマットを持っていません。彼らは01/01/0001の開始時の深夜0時から100nsの間隔の数を記録します。書式が必要な場合は、*文字列*が必要です。実際のデータとそのデータの可能な*表現*を混同しないでください。 –