字符串未被识别为有效的DateTime C#Asp.net

时间:2016-05-20 07:03:26

标签: asp.net json asp.net-mvc asp.net-mvc-4 c#-4.0

我的日期是字符串格式20/05/2016

string weekEndDate="20/05/2016"

将其转换为DateTime时,出现错误:

DateTime EndDate = Convert.ToDateTime(weekEndDate);

字符串未被识别为有效的DateTime。

4 个答案:

答案 0 :(得分:0)

尝试将字符串格式更改为" yyyy-mm-dd"或" yyyy / mm / dd"

答案 1 :(得分:0)

您还可以使用DateTime.TryParse方法从任何日期格式中解析日期。见examples

答案 2 :(得分:0)

您可以使用ParseExact方法将字符串解析为DateTime

string weekEndDate = "20/05/2016";
DateTime EndDate = DateTime.ParseExact(weekEndDate, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);

或者你可以使用TryParseExact如果exception未被解析为string

,它就不会抛出DateTime
DateTime.TryParseExact(weekEndDate, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture, DateTimeStyles.None, out EndDate);

答案 3 :(得分:0)

使用TryParseExact

string d1 = "11/18/2016 11:45:44 AM";
string d2 = "11/18/2016 11:45:59 AM";

DateTime frmdate;
DateTime todate;
CultureInfo enUS = new CultureInfo("en-US");
bool f = DateTime.TryParseExact(d1, "M/dd/yyyy HH:mm:ss tt", enUS, DateTimeStyles.None, out frmdate);
bool t = DateTime.TryParseExact(d2, "M/dd/yyyy HH:mm:ss tt", enUS, DateTimeStyles.None, out todate);

TimeSpan val = frmdate - todate;