字符串未被识别为有效的DateTime(DateTime.Parse(" 16.10.2014"))

时间:2016-02-02 07:15:50

标签: c#-4.0

当我尝试将字符串转换为日期时,它会抛出错误&它说String was not recognized as a valid DateTime.

我的代码如下:

string dateString = "16.10.2014";
DateTime formattedDate = DateTime.Parse(dateString);

1 个答案:

答案 0 :(得分:1)

只需使用DateTime.ParseExact指定格式即可。当您提前了解格式时,这几乎总是解决方案:

DateTime date = DateTime.ParseExact(
    dateString,
    "dd.MM.yyyy", // This might want to be d.M.yyyy - we don't know
    CultureInfo.InvariantCulture);

dd.MM.yyyyd.M.yyyy之间的区别在于如何处理一位数的月份和天数。 7月首先是01.07.2016还是1.7.2016?调整格式字符串以适应数据。

请注意CultureInfo.InvariantCulture的使用 - 如果您的系统文化恰好是使用不同日历的系统文化,则可以避免将日期解析为非公历中的日期。