C# 如何使用通用日期格式

C# 如何使用通用日期格式,c#,datetime,C#,Datetime,我有一个C#程序,可以处理access数据库。(我在access中有datetime字段-短日期) 如何确保程序不会因错误的日期格式而崩溃 例如: 在我的计算机中,日期的格式为:dd/MM/yyyy 如果我在具有以下格式的计算机上运行我的程序:MM/dd/yyyy 程序将崩溃或显示异常结果 有没有通用的解决方案? 我能得到这个的C代码吗 提前感谢在使用DateTime.TryParse进行解析之前验证您的日期 string myDate = "01/30/1970"; DateTime vali

我有一个C#程序,可以处理access数据库。(我在access中有datetime字段-短日期) 如何确保程序不会因错误的日期格式而崩溃

例如: 在我的计算机中,日期的格式为:dd/MM/yyyy 如果我在具有以下格式的计算机上运行我的程序:MM/dd/yyyy 程序将崩溃或显示异常结果

有没有通用的解决方案? 我能得到这个的C代码吗


提前感谢

在使用
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.            
}

如果使用System.DateTime,则不必担心这个问题。Access和.Net会将日期存储为数值。在前端,您可以按自己喜欢的方式格式化它。DateTime可以为您解决本地化问题,因此您不需要做任何特殊的事情

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;

}