使用前导零获取日期时间小时和分钟

Enc*_*ion 21 c#

我正在尝试找出最简单的代码,以便在DateTime.Now函数的小时和分钟上添加前导零.我只需要合并小时和分钟,而且我不需要剩下的日期.

什么是最好的方法呢?

我的代码看起来像这样:

DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString();
Run Code Online (Sandbox Code Playgroud)

但是我在下午4:04得到16:4的数据,我需要它看起来像16:04.我熟悉有关日期时间格式的msdn文章,但我没有看到任何具体解决此问题的内容.

是否可以组合`DateTime.Now.Hour.ToString()+":"+ DateTime.Now.Minute.ToString();

如果不是,我怎么能只把HH:MM拉出DateTime.Now很容易?

寻找最少的代码行,因为这是我将经常使用的东西.谢谢

Dis*_*ile 69

DateTime.Now.ToString("hh:mm") // for non military time
DateTime.Now.ToString("HH:mm") // for military time (24 hour clock)
Run Code Online (Sandbox Code Playgroud)

使用hhvs h将执行前导0.与mm分钟相同.如果你想要秒,你可以使用ss.

MM - Month with leading 0
M - Month without leading 0
dd - Day with leading 0
d - Day without leading 0
yyyy - 4 Digit year
yy - 2 Digit year
HH - Military Hour with leading 0
H - Military Hour without leading 0
hh - Hour with leading 0
h - Hour without leading 0
mm - Minute with leading 0
m - Minute without leading 0
ss - Second with leading 0
s - Second without leading 0
Run Code Online (Sandbox Code Playgroud)

还有更多.您应该查看MSDN文档以获取完整的参考:https: //msdn.microsoft.com/library/zdtaw1bw.aspx


小智 5

如果您只想将小时和分钟作为分隔值,您可以使用

DateTime.Now.Hour.ToString("00.##") + ":" + DateTime.Now.Minute.ToString("00.##");
Run Code Online (Sandbox Code Playgroud)