VB.Net 自定义时间格式

VB.Net Custom Time Format

我有一个在 Studio 2017 中构建的 VB 程序。我需要以一种可以继续在文件名中使用的格式生成时间。

DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") 

例如吐出 12:00:00 并且 : 在文件名中不可用。

我可以删除 : 所以它将是 1200000(不是特别可读但适合我的目的)或 12-00-00。

我已经检查过 here,但看不到任何可以解决问题的 ToString 格式。

我的代码会在当前日期和时间上放置一个标签(例如 label1)。另一部分将使用 Label1.Text 来抓取字符串。所以任何格式化都可以发生在 Label1 上。

比如会这样使用;

oDoc = oWord.ActiveDocument
oDoc.saveas2("C:\Test\" & "DocumentTitle" & "-" & label1.text & ".docx"

有没有办法将日期字符串格式化为我想要的格式?

只需使用 String.Replace

Dim ActualTime as String = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")
ActualTime = ActualTime.Replace("/","-").Replace(":","-")
oDoc = oWord.ActiveDocument oDoc.saveas2("C:\Test\" & "DocumentTitle" & "-" & ActualTime & ".docx"

不是最优化但很容易理解。按照 Visual Vincent 的建议添加了一行替换。

一定要检查他的解决方案。

为什么首先添加冒号?

DateTime.Now.ToString("yyyy-MM-dd HHmmss")