C# 将文本字段(小时和分钟/HH:mm)转换为日期时间(仅小时/HH)
自从上次我得到了很快很好的答案,我想再请你们大家帮忙一次 我有一个字符串(取自access mdb中的文本字段),它由一个时间值(HH:mm)组成 现在我想把这个字符串放到一个日期时间选择器中。 但这里是棘手的部分: 我只需要获得datetime选择器中显示的小时数,因为我将在以后使用此字段进行更多计算 因此,如果字符串是例如“13:27”,则日期时间选择器应仅显示“13:00” 我用以下代码进行了尝试,但不幸的是,我得到了错误日期01.01.0001 13:00:00C# 将文本字段(小时和分钟/HH:mm)转换为日期时间(仅小时/HH),c#,datetime,C#,Datetime,自从上次我得到了很快很好的答案,我想再请你们大家帮忙一次 我有一个字符串(取自access mdb中的文本字段),它由一个时间值(HH:mm)组成 现在我想把这个字符串放到一个日期时间选择器中。 但这里是棘手的部分: 我只需要获得datetime选择器中显示的小时数,因为我将在以后使用此字段进行更多计算 因此,如果字符串是例如“13:27”,则日期时间选择器应仅显示“13:00” 我用以下代码进行了尝试,但不幸的是,我得到了错误日期01.01.0001 13:00:00 dateTimePick
dateTimePicker2.Text = row.Cells[2].Value.ToString();
string s = dateTimePicker2.Text.Split(':')[0];
double ss = Convert.ToDouble(s);
TimeSpan TS = TimeSpan.FromHours(ss);
DateTime DT = DateTime.MinValue.Add(TS);
dateTimePicker2.Text = Convert.ToString(DT);
试试这个:
dateTimePicker2.Text = DT.ToString("HH:mm:ss");
我得到了错误日期01.01.0001 13:00:00
dateTimePicker2.Text = row.Cells[2].Value.ToString();
string s = dateTimePicker2.Text.Split(':')[0];
double ss = Convert.ToDouble(s);
TimeSpan TS = TimeSpan.FromHours(ss);
DateTime DT = DateTime.MinValue.Add(TS);
dateTimePicker2.Text = Convert.ToString(DT);
那是因为那条线
DateTime DT = DateTime.MinValue.Add(TS);
替换为DateTime DT=DateTime.Now.Add(TS);
您应该获得当前日期和预定时间。请添加简短说明,说明为什么这样做有效
var curr =Convert.ToDateTime(textBox1.Text);
string hour = curr.ToString("HH:00");
dateTimePicker1.Text = hour;