に変換dd/MM/yyyy
したいMM/dd/yyyy
。
私のコード:
string g = "20-1-1999";
DateTime dt = DateTime.ParseExact(g, "dd/MM/yyyy", CultureInfo.InvariantCulture);
エラーメッセージ:
文字列は有効な DateTime として認識されませんでした。
M
フォーマット文字列で月にシングルを指定する必要があります。フォーマット指定子 MM の詳細については、こちらおよび Mはこちらを参照してください。-
また、代わりにセパレーターとして使用する必要があります/
DateTime.ParseExact(g, "dd-M-yyyy", CultureInfo.InvariantCulture);
日が 1 桁になると予想する場合は、日d
も 1 桁とします。
DateTime.ParseExact(g, "d-M-yyyy", CultureInfo.InvariantCulture);
"MM" カスタム書式指定子は、月を 01 から 12 (13 か月のカレンダーの場合は 1 から 13) の数値で表します。1 桁の月は先頭に 0 を付けてフォーマットされます ( MSDN )
"M" カスタム書式指定子は、月を 1 から 12 (13 か月のカレンダーの場合は 1 から 13) の数値で表します。1 桁の月は、先頭に 0 を付けずに書式設定されます ( MSDN ) 。
あなたのフォーマットはdd-M-yyyy
DateTime dt = DateTime.ParseExact(g, "dd-M-yyyy", CultureInfo.InvariantCulture);
var result = dt.ToString("MM/dd/yyyy");