私は変換しようとしています
string date = "31.03.2013"
にDateTime
。これが私のコードです:
Convert.ToDateTime(date,CultureInfo.InvariantCulture);
フォーマット例外が発生します。
http://msdn.microsoft.com/en-us/library/vstudio/cc165448.aspxによると、動作するはずです。ありがとう
私は変換しようとしています
string date = "31.03.2013"
にDateTime
。これが私のコードです:
Convert.ToDateTime(date,CultureInfo.InvariantCulture);
フォーマット例外が発生します。
http://msdn.microsoft.com/en-us/library/vstudio/cc165448.aspxによると、動作するはずです。ありがとう
不変カルチャはに基づいています。en-US
ここで.
、は日付区切り文字ではありません。
日付区切り文字としてfr-FR
使用する、などの正しいカルチャを使用する必要があります。.
DateTime.ParseExact
またはDateTime.TryParseExact
、正確なフォーマット文字列を使用することもできます。
Convert.ToDateTime("31.03.2013", CultureInfo.GetCultureInfo("fr-FR"))
または
DateTime.ParseExact("31.03.2013",
"dd.MM.yyyy",
CultureInfo.InvariantCulture)
動作します。
どうですか
DateTime.ParseExact(date,"dd.MM.yyyy",null);
DateTime.ParseExactメソッドを使用してみることができます。それはあなたのためにトリックをするはずです。
DateTime.ParseExact("31.03.2013", "dd.MM.yyyy", CultureInfo.InvariantCulture);
このコードを使用してください-
DateTime.ParseExact(date, "dd.MM.yyyy", CultureInfo.InvariantCulture);
DateTime.TryParseExactでこれを試すことができます:
string date = "31.03.2013";
DateTime dateConverted;
DateTime.TryParseExact(date, new string[] { "dd.MM.yyyy" }, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out dateConverted);
Console.WriteLine(dateConverted);