.NET Framework 4 と WPF を使用しています。
私のアプリケーションは、PC の地域設定を認識する必要があります。PC の地域設定で指定されている日付と時刻の形式を解析できる必要があります。Windows 7 のターゲット プラットフォーム。
私の PC カルチャは en-US に設定されています。アプリケーションをテストするために、PC の地域設定から、日付と時刻の形式を次のように設定しました。
短い日付: M/d/yyyy
長い日付: dddd、MMMM dd、yyyy
短い時間: うーん
長い時間: HHmm.ss
ここで、文字列を指定すると6/3/2013 1617.18
、アプリケーションはそれを date と time を表す date time オブジェクトに正常に解析できるはず3rd June, 2013 4:17:18 PM
です。この形式はユーザーが変更できるため、この形式が使用されるとは限りません。
私は次のコードを試しました:
string sdt = "6/3/2013 1617.18";
CultureInfo culture = CultureInfo.CurrentCulture;
DateTime dt;
bool validDate = DateTime.TryParse(sdt,
culture.DateTimeFormat,
System.Globalization.DateTimeStyles.None,
out dt);
ただし、実行後ですvalidDate
。false
PC の地域設定で設定されたパターンに従ってフォーマットされた日時文字列が与えられた場合、それを同等のDateTime
オブジェクトに変換するにはどうすればよいですか?