将String转换为DateTime变量?

时间:2009-11-11 10:37:45

标签: c#

如何将字符串“08:00”转换为DateTime数据类型?

我试图像这样使用它,我得到错误:

public DateTime currentTime 
{
    get 
    { 
        return DateTime.TryParse(
            this.Schedule.Timetables.Max(x => x.StartTime), 
            currentTime); 
    } 
    set 
    { 
        currentTime = value; 
    }
}

/ M

4 个答案:

答案 0 :(得分:5)

您想查看DateTime.Parse()DateTime.TryParse()

DateTime.Parse()接受一个字符串,如果失败,将抛出几个异常中的一个。 DateTime.TryParse()接受一个字符串和一个out DateTime参数,并返回一个布尔值来确定解析是否成功。

您还会发现可以使用大多数其他C#struts执行此操作,例如Boolean,Int32,Double等...

使用您拥有的代码

public DateTime CurrentTime 
{
    get 
    { 
       DateTime retVal;
       if(DateTime.TryParse(this.Schedule.TimeTables.Max(x => x.StartTime), out retVal))
       {
           currentTime = retVal;
       }

       // will return the old value if the parse failed.
       return currentTime;       
    } 
    set 
    { 
        currentTime = value; 
    }
}
private DateTime currentTime;

答案 1 :(得分:1)

您也可以使用DateTime.ParseExact方法

答案 2 :(得分:0)

DateTime.Parse("08:00")

答案 3 :(得分:0)

您可以通过传递字符串和确切格式(在本例中为hh:mm)来使用DateTime.ParseExact