2011-08-01 13 views
-1

私はアクセスデータベースで動作するC#プログラムを持っています。 (私はアクセスの日時フィールドを持っています - 短い日付) プログラムが間違った日付形式でクラッシュしないようにするにはどうすればいいですか?例えば一般的な日付形式を使用する方法

:私のコンピュータで この形式の日付:DD/MM/YYYY と私はこのフォーマットを持つコンピュータで私のプログラム実行する場合:MM/DD/YYYY をプログラムがクラッシュするか、私が表示されます異常な結果

汎用ソリューションはありますか? これのためにC#のコードを取得できますか?事前

答えて

1

おかげで前DateTime.TryParse例えばを使用して解析するには、あなたの日付を検証します

string myDate = "01/30/1970"; 
DateTime validDate; 
if (DateTime.TryParse(myDate, out validDate)) 
{ 
    // Good date, now stored in validDate 
} 
else 
{ 
    // Handle/Cleanup bad date.    
} 
0

System.DateTimeを使用している場合、これについて心配する必要はありません。 Accessと.Netは日付を数値として保存します。フロントエンド側では、好きなようにフォーマットすることができます。 DateTimeはあなたのためのローカリゼーションの問題を処理することができますので、特別な作業は必要ありません。

0
private DateTime ParseDate(string date) 
{ 
    DateTime convertedDate; 

    if (!DateTime.TryParseExact(date, "ddMMyyyy", new CultureInfo("en-US"), 
     DateTimeStyles.None, out convertedDate)) 

     throw new FormatException(string.Format("Unable to format date:{0}", date)); 

    return convertedDate; 

} 
関連する問題