Vb.net StreamWriter文本文件名必须包括小时、分钟和秒

Vb.net StreamWriter文本文件名必须包括小时、分钟和秒,vb.net,Vb.net,运行以下代码,查看桌面上的文本文件名为MyLogFile 08.04.2017 Dim Log As System.IO.StreamWriter Log = My.Computer.FileSystem.OpenTextFileWriter(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\MyLogFile " & System.DateTime.Now.Date.ToString

运行以下代码,查看桌面上的文本文件名为
MyLogFile 08.04.2017

    Dim Log As System.IO.StreamWriter
    Log = My.Computer.FileSystem.OpenTextFileWriter(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\MyLogFile " & System.DateTime.Now.Date.ToString("dd/MM/yyyy") & ".txt", False)
    Log.WriteLine("Hello")
    Log.Close()
我曾想将文件名从
MyLogFile 08.04.2017
更改为
MyLogFile 08.04.2017 07:50:59
,但这是不可能的,因为不允许使用


现在,由于您的支持,我想将文件名从
MyLogFile 08.04.2017
更改为
MyLogFile 08.04.2017 07.50.59

我强烈建议,在文件和文件夹名称中包含日期和时间时,从最重要到最不重要。原因是字母顺序和时间顺序会匹配。就个人而言,我根本不使用分隔符,因此:

Log = My.Computer.FileSystem.OpenTextFileWriter(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                                             String.Format("MyLogFile.{0:yyyyMMddHHmmss}.txt",
                                                                           Date.Now),
                                                False)
Log = My.Computer.FileSystem.OpenTextFileWriter(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                                             String.Format("MyLogFile {0:dd.MM.yyyy HH.mm.ss}.txt",
                                                                           Date.Now),
                                                False)
如果你真的想按自己的方式去做,那么应该是:

Log = My.Computer.FileSystem.OpenTextFileWriter(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                                             String.Format("MyLogFile.{0:yyyyMMddHHmmss}.txt",
                                                                           Date.Now),
                                                False)
Log = My.Computer.FileSystem.OpenTextFileWriter(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                                             String.Format("MyLogFile {0:dd.MM.yyyy HH.mm.ss}.txt",
                                                                           Date.Now),
                                                False)

您只需根据需要更改格式说明符。

我强烈建议在文件和文件夹名称中包含日期和时间时,从最重要到最不重要。原因是字母顺序和时间顺序会匹配。就个人而言,我根本不使用分隔符,因此:

Log = My.Computer.FileSystem.OpenTextFileWriter(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                                             String.Format("MyLogFile.{0:yyyyMMddHHmmss}.txt",
                                                                           Date.Now),
                                                False)
Log = My.Computer.FileSystem.OpenTextFileWriter(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                                             String.Format("MyLogFile {0:dd.MM.yyyy HH.mm.ss}.txt",
                                                                           Date.Now),
                                                False)
如果你真的想按自己的方式去做,那么应该是:

Log = My.Computer.FileSystem.OpenTextFileWriter(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                                             String.Format("MyLogFile.{0:yyyyMMddHHmmss}.txt",
                                                                           Date.Now),
                                                False)
Log = My.Computer.FileSystem.OpenTextFileWriter(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
                                                             String.Format("MyLogFile {0:dd.MM.yyyy HH.mm.ss}.txt",
                                                                           Date.Now),
                                                False)
您只需根据需要更改格式说明符。

您可以执行以下操作:

Dim Folder As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
Dim FileName As String = "MyLogFile " & DateTime.Now.ToString("dd.MM.yyyy HH.mm.ss") & ".txt"
Dim Log As System.IO.StreamWriter
Log = My.Computer.FileSystem.OpenTextFileWriter(System.IO.Path.Combine(Folder, FileName), False)
Log.WriteLine("Hello")
Log.Close()
你可以做:

Dim Folder As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
Dim FileName As String = "MyLogFile " & DateTime.Now.ToString("dd.MM.yyyy HH.mm.ss") & ".txt"
Dim Log As System.IO.StreamWriter
Log = My.Computer.FileSystem.OpenTextFileWriter(System.IO.Path.Combine(Folder, FileName), False)
Log.WriteLine("Hello")
Log.Close()

如果我在早晨运行此代码,小时显示
07
。如果我运行此代码,晚上小时将再次显示
07
。但是我想要
07
早上,
19
晚上。可能?是,将
hh
更改为
hh
。有关更多详细信息,请参阅。如果我运行此代码,早晨小时将显示
07
。如果我运行此代码,晚上小时将再次显示
07
。但是我想要
07
早上,
19
晚上。可能?是,将
hh
更改为
hh
。有关更多详细信息,请参阅。