当我尝试转换为日期时间时出现以下错误。
字符串未被识别为有效的日期时间。
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) ;
但我遇到了同样的异常如何解决这个问题。
Using string.Format
当。。。的时候input是一个字符串是没有意义的。
如果您知道字符串的格式,则应该使用DateTime.ParseExact http://msdn.microsoft.com/en-us/library/system.datetime.parseexact.aspx or DateTime.TryParseExact http://msdn.microsoft.com/en-us/library/system.datetime.tryparseexact.aspx。例如,对于您拥有的字符串,您可以使用:
DateTime date = DateTime.ParseExact(text, "MM/dd/yyyy",
CultureInfo.InvariantCulture);
您应该考虑:
- 这是用户输入吗?如果是这样,请使用
TryParseExact
更轻松地检测用户错误,无异常。
- 您确定确切的格式吗?如果没有,使用DateTime.TryParse http://msdn.microsoft.com/en-us/library/system.datetime.tryparse.aspx可能更合适。
- 你真的了解文化吗?如果它不是当前线程的区域性,则应明确指定它。
- Do you have获取文本值作为开始?如果您可以使用另一种输入形式,为您提供值
DateTime
首先,这会更好。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)