能转日期的就把当前字符串转成日期型,如 "1999-11-11" 转成 1999-11-11 00:00:00而如果是 "jfkdlsajkfl"这种类型的字符串,就得到当前 日期时间值 如 2009-8-10 14:47:00

解决方案 »

  1.   

    try
    datetime.Parse
    catch
    =DateTime.Now
      

  2.   

    或者
    try
    {
        string str = DateTime.Parse("1990-11-11").ToString("yyyy-MM-dd") + " 00:00:00";
    }
    catch
    {
        string str = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
    }
      

  3.   

    其实是我记错了,我记得TryParse是可以指定转换不成功时的缺省值的,结果不是。Delphi里有可以指定缺省值的,C#没有。只能转换不成功后再取值了。
      

  4.   


      private DateTime  StringToDateTime(string strTemp)
            {
                DateTime tempDate;
                try
                {
                    tempDate = DateTime.Parse ( Convert.ToDateTime(strTemp).ToString("yyyy-MM-dd") + " 00:00:00");
                }
                catch
                {
                    tempDate = DateTime.Now;
                }
                return tempDate;
            }我试过了,是可以的
      

  5.   

    c# code 
    DateTime tempDate;
                try
                {
                    tempDate = DateTime.Parse(Convert.ToDateTime(textBox1 .Text .Trim ()).ToString("yyyy-MM-dd") + " 00:00:00");
                }
                catch
                {
                    tempDate = DateTime.Now;
                }
                textBox2.Text = tempDate.ToString ();
    已经在VS下运行通过