C#ではどのようにして文字列を解析しますか"dd/mm/yyyy"
または"dd-mm-yyyy"
をdatetimeに変換しますか? 文字列が正しい形式でないというエラーが表示されます。私はそれらのうちの1つだけでなくすべてのフォーマットを解析できる必要があります。日付形式の文字列をdatetimeに構文解析する
答えて
mm
は分を意味し、大文字のはを意味します。だから、この作品
:
それとは別に、あなたが日付の区切りとして/
で文字列を解析する場合は、この交換用あなたの現在のカルチャの日付の区切りのための文字ですので、CultureInfo.InvariantCulture
を使用する必要が
DateTime.ParseExact("23/07/2013", "dd/MM/yyyy", CultureInfo.InvariantCulture);
mm対MMの+1。 – Corak
指定された形式でDateTime.ParseExact
メソッドを使用できます。
var d = DateTime.ParseExact(token, "dd-MM-yyyy",
CultureInfo.InvariantCulture,
DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal);
フォーマット文字列が間違っています。 「mm」は月ではなく分です。 –
@JohnKoernerはそれをキャッチしてくれてありがとう。 – doogle
受け入れる予定のデータ形式を定義する必要があります。すべてのフォーマットのようなものはありません。あなたはDateTime.ParseExact
にフォーマット列を渡すことができることを定義したら、あなたのコードは次のようになります。
string[] formats = new string[2] {"dd/MM/yyyy", "dd-MM-yyyy"};
string date = "23-02-2013";
try
{
DateTime result = DateTime.ParseExact(date, formats, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal);
}
catch (FormatException)
{
// your error handling code here
}
あなたが好きなフォーマットを定義することができます - プラスあなたが与えられた文化のデフォルトのリストを取得することができます。
var ci = new CultureInfo("en-US");
var formats = new[] { "M-d-yyyy", "dd-MM-yyyy", "MM-dd-yyyy", "M.d.yyyy", "dd.MM.yyyy", "MM.dd.yyyy" }
.Union(ci.DateTimeFormat.GetAllDateTimePatterns()).ToArray();
DateTime.ParseExact("07/23/2013", formats, ci, DateTimeStyles.AssumeLocal).Dump();
DateTime.ParseExact("07-23-2013", formats, ci, DateTimeStyles.AssumeLocal).Dump();
DateTime.ParseExact("23-07-2013", formats, ci, DateTimeStyles.AssumeLocal).Dump();
DateTime.ParseExact("23.07.2013", formats, ci, DateTimeStyles.AssumeLocal).Dump();
出力:
7/23/2013 12:00:00 AM
7/23/2013 12:00:00 AM
7/23/2013 12:00:00 AM
7/23/2013 12:00:00 AM
- 1. DateTime形式の文字列を解析する
- 2. 日付文字列を日付で変換しますDateTime形式vb.net
- 3. 文字列を正しい日付形式に解析できません
- 4. Pythonで文字列の日付をdatetime形式に変換する方法は?
- 5. 形式の文字列ddMMMyyyy hhmm(Month-Name付き)からの解析日時
- 6. DateTime文字列を解析する
- 7. 文字列をdatetime形式に変換
- 8. 日付を構文解析する
- 9. MSGファイル形式の構文解析
- 10. WPFのカスタムDateTime文字列形式
- 11. 文字列を特定の日付形式に変換する
- 12. xmlフィードからDateTimeまでの日付文字列を解析します。
- 13. 特定の形式の文字列を解析する
- 14. 文字列を日付形式dd-MMM-yyyy形式に変換するには?
- 15. oracle10gの文字列の日付を日付形式に変換する方法
- 16. C#でRFC-1123の日付形式を使用し、火曜日の日付の構文解析の問題
- 17. 文字列を日付形式に変換する
- 18. 文字列を日付形式(VB.net)に変換する
- 19. MS Accessで文字列を日付形式に変換する
- 20. 日付文字列をNodaTimeオブジェクトに解析するには?
- 21. スタックからの非標準日付文字列の解析.NET DateTimeへのオーバーフロー
- 22. テキストファイルから日付に文字列を解析する
- 23. 日時文字列形式の整列
- 24. "yyyy"という形式の文字列を解析します。
- 25. 構文解析時間文字列(MM:SS.msec)
- 26. Android、構文解析html、文字列の文字列の問題
- 27. PHPでローカライズされた日付文字列を解析する
- 28. .NETでFlash日付文字列を解析する方法は?
- 29. カスタム日付時刻形式の解析
- 30. yyyymmdd形式の文字列をdatetimeに変換する
私達にあなたのコードを表示します。 – SLaks
"dd/mm/yyyy"形式と "mm/dd/yyyy"形式の両方が存在する場合、12月またはそれ以前の日付はあいまいでなければなりません - すべての形式を解析できる必要があります - それはコンピュータによって解決できない問題です。 –
あなたが試したコードを私たちに教えてください。 –