我有这个标签从数据库中检索时间并在标签中显示。但是数据库中的时间也包括第二个例如03:45:29,如何在检索它之后删除标签中03:45之后的第二个时间。这是我的代码:LabelDateMarker.Text = LabelDateMarker.Text + " " + dr[3].ToString();
答案 0 :(得分:2)
假设dr
是SqlDataReader
或类似的,您可能希望转换为DateTime
,然后适当地格式化值:
DateTime dateTime = (DateTime) dr[3];
string formatted = dateTime.ToString("yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture);
LabelDateMarker.Text += " " + formatted;
此处yyyy-MM-dd HH:mm
是custom date/time format string,表示您需要ISO-8601格式的日期部分之后的小时和分钟。
我在格式化时使用了不变文化,以避免在默认情况下不使用公历的区域设置中产生意外结果。
(我假设该值始终为非null。如果它可能为null,则应首先使用dr.IsDBNull(3)
进行检查。)
答案 1 :(得分:1)
使用此
的格式字符串((DateTime)dr[3]).ToString("yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture);
而不是
dr[3].ToString();
有关详细信息,请查看MSDN
中的可用格式