日期:2014-05-19  浏览次数:20994 次

此字符串未被识别为有效的DateTime
DateTime   dt1=Convert.ToDateTime(this.textBox11.Text.Trim());
在执行上面语句的时候出现“此字符串未被识别为有效的DateTime”,请问这是为什么啊?

------解决方案--------------------
检查一下this.textBox11里的Text格式对不对
------解决方案--------------------
你要输入的时间格式是什么?
------解决方案--------------------
日期格式是有一点规范的,可以使用try..catch..来处理异常

自订Convert.ToDateTime的格式
//這樣就只能接受 "yyyyMMdd " 格式了

string d, f;
DateTime dt;
IFormatProvider yyyymmddFormat = new CultureInfo(String.Empty, false);

d =this.textBox1.Text;
f = "yyyyMMdd ";
try
{
dt = DateTime.ParseExact(d, f, yyyymmddFormat);
MessageBox.Show(dt.ToString());
}
catch (Exception ex)
{
MessageBox.Show( "Error ");
}
------解决方案--------------------
ateTime dt1=new DateTime();
DateTime dt2=new DateTime();
try
{
dt1=Convert.ToDateTime(this.textBox1.Text.Trim());
dt2=Convert.ToDateTime(this.textBox2.Text.Trim());
MessageBox.Show(dt1.ToString());
MessageBox.Show(dt2.ToString());
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{

}

就是说为空时,无法转换成日期格式,就像你要把一个汉字转换成数字时一样,也会报错。
只能说到这个份了。。