当我尝试转换为日期时间时出现以下错误。
字符串未被识别为有效的日期时间。
cost.b_date = DateTime.Parse(c_date.Text) ;//c_date.Text = 12/28/2012
然后我试试
string date = string.Format("{0:yyyy-MM-dd}",c_date.Text);
cost.b_date = DateTime.Parse(date) ;
但我得到了同样的例外,如何解决这个问题。
当我尝试转换为日期时间时出现以下错误。
字符串未被识别为有效的日期时间。
cost.b_date = DateTime.Parse(c_date.Text) ;//c_date.Text = 12/28/2012
然后我试试
string date = string.Format("{0:yyyy-MM-dd}",c_date.Text);
cost.b_date = DateTime.Parse(date) ;
但我得到了同样的例外,如何解决这个问题。
string.Format当输入是字符串时使用是没有意义的。
如果你知道字符串的格式,你应该使用DateTime.ParseExactor DateTime.TryParseExact。例如,对于您拥有的字符串,您可以使用:
DateTime date = DateTime.ParseExact(text, "MM/dd/yyyy",
CultureInfo.InvariantCulture);
你应该考虑:
TryParseExact来更轻松地检测用户错误,而不会出现异常。DateTime.TryParse可能更合适。DateTime开始,那将是可取的。CultureInfo provider = CultureInfo.InvariantCulture;
DateTime result = DateTime.ParseExact(c_date.Text, "d", provider);
尝试使用 DateTime.ParseExact。
DateTime date = DateTime.ParseExact(c_date.Text, "yyyy/MM/dd", null);