在下面的代码中,我使用的是当前日期和时间,在此帮助下我生成了一个文件名。我的问题是它给了我一个没有前导零的输出:
Dim strDateTime As String = DateTime.Now.Day.ToString() & "" & _
DateTime.Now.Month.ToString() & "" & DateTime.Now.Year.ToString() & "" & _
DateTime.Now.Hour.ToString() & "" & DateTime.Now.Minute.ToString() & "" & _
DateTime.Now.Second.ToString() & DateTime.Now.Millisecond.ToString()
例如,我的查询目前正在提供输出:
假设时间为1:5:30 :: hh:mm:ss
必需的输出是:01:05:30
我怎样才能做到这一点?
答案 0 :(得分:5)
试试这个,
DateTime.Now.Hour.ToString("00") & ":" & DateTime.Now.Minute.ToString("00") & ":" & DateTime.Now.Second.ToString("00")
编辑:
正如答案中“mdb”所建议的那样,使用Custom Date and Time Format字符串会更有效,更清晰
DateTime.Now.ToString("hh:mm:ss tt") '12 Hour format with AM/PM designator, Eg :- 09:01:01 PM
DateTime.Now.ToString("HH:mm:ss") '24 Hour format Eg :- 21:01:01
答案 1 :(得分:4)
您需要使用String.Format,而不是连接非常低效的字符串。这也支持Custom Date and Time Format Strings,这使得实现你想要的东西变得微不足道。