DateTime.Minute返回5而不是05

时间:2015-08-28 16:53:24

标签: c# datetime minute

以下代码在MessageBox中返回5,因为分钟为“05”。我用“mm”时用前导0显示它。为什么这不起作用?

DateTime date = new DateTime(d.startTime.Month,d.startTime.Day,d.startTime.Year,15,05,00);
String s = date.ToString("MM.dd.yyyy HH:mm");
d.startTime = Convert.ToDateTime(s);
MessageBox.Show(d.startTime.Minute.ToString());

3 个答案:

答案 0 :(得分:7)

您正在显示ders.startTime.Minute,而不是格式化字符串中的任何内容。由于Minute是一个整数,因此输出为5。使用

ders.startTime.ToString("mm"));

将仅输出日期时间的Minute值,格式为前导零。

答案 1 :(得分:4)

startTime.Minute以整数形式返回分钟,这就是为什么,你得到5

使用 startTime.Minute.ToString("D2");

答案 2 :(得分:0)

您可能希望在对消息框的调用中添加格式字符串。

MessageBox.Show(d.startTime.Minute.ToString("00"));

您可以找到有关他们的更多信息on the msdn