如何使用通用日期格式

时间:2011-08-01 19:57:54

标签: c# datetime

我有使用访问数据库的C#程序。 (我有访问日期时间字段 - 短日期) 如何确保程序不会以错误的日期格式崩溃?

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

有没有通用的解决方案? 我可以获得任何C#代码吗?

提前致谢

3 个答案:

答案 0 :(得分: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.            
}

答案 1 :(得分:0)

如果您使用System.DateTime,则不必担心这一点。 Access和.Net将日期存储为数值。在前端,您可以根据需要格式化。 DateTime可以为您处理本地化问题,因此您无需做任何特别的事情。

答案 2 :(得分: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;

}