如何将label.text=dr[quot;column';].tostring转换为datetime
本文关键字:column tostring datetime 转换 quot label text dr | 更新日期: 2023-09-27 17:54:01
我尝试了很多转换技术,但总是失败
喜欢:我在
[btnIN button]
lbltimein.text = dr["column_name"].toString();
[btnout button]
DateTime dt = Convert.ToDateTime(lbltimein.text);
您需要知道用户输入Date
值的格式
例如,如果格式i dd-MM-yyyy
试试这个:
DateTime dt = DateTime.ParseExact(lbltimein.Text,"dd-MM-yyyy",
System.Globalization.CultureInfo.InvariantCulture) ;
编辑:如果您有时间,请按HH:mm:ss
格式从评论中编辑您可以根据分号对其进行拆分,并将其分配给TimeSpan
构造函数以获得总小时数。
var time = lbltimein.Text.Split(':');
TimeSpan time=new TimeSpan(Convert.ToInt32(time[0]),
Convert.ToInt32(time[1]),Convert.ToInt32(time[2]));
double totalHours = time.TotalHours;
编辑2:如果您的格式为:08:00:00 AM
试试这个:
var inputtime = lbltimein.Text;
TimeSpan time = new TimeSpan(Convert.ToInt32(inputtime.Substring(0,2)),
Convert.ToInt32(inputtime.Substring(3, 2)),
Convert.ToInt32(inputtime.Substring(6, 2)));
double totalHours = time.TotalHours;
DateTime.Parse(dr["column_name"].ToString())
如果您的字符串是有效的DateTime格式,则应该完成此操作。
如果你不确定格式,你也可以试试这个来确定你的字符串是否可以转换。我更喜欢这种方法,因为它让你有机会在没有try/catch块的情况下处理糟糕的输入。
DateTime OutputTime = new DateTime();
if(DateTime.TryParse(dr["column_name"].ToString(),out OutputTime))
{
///manipulate output datetime here if successful
}
else
{
///figure out why the conversion failed / handle error
}