2017-04-08 19 views
0

実行次のコードが含まれており、あなたが名前のデスクトップ上のテキストファイルを持っていることを見なければならないMyLogFile 08.04.2017のStreamWriterテキストファイル名は、時、分、秒

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にファイル名を変更したいと思います。

答えて

0

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() 
+0

私はこのコードの朝を実行すると時間のショー '07'。このコードを実行すると、夕方に再び「07」の時間が表示されます。しかし、私は '07'朝、' 19'夜が欲しい。可能? –

+0

はい、 'hh'を' HH'に変更してください。 [カスタム日付と時刻のフォーマット文字列](https://docs.microsoft.com/en-us/dotnet/articles/standard/base-types/custom-date-and-time-format-strings?view=netframework- 4.7)を参照してください。 –

+0

ありがとうございます。 –

3

ファイル名とフォルダ名に日付と時刻を含める場合は、最も重要なものから最も重要なものに変更することを強くお勧めします。その理由は、アルファベット順と時系列順が一致するからです。あなたは単にフォーマット指定を変更

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) 

あなたが本当にそれをあなたの方法をしたい場合、それは次のようになります。それは次のようになりますので、個人的に、私はすべての区切り文字を使用しないでください必要です。あなたが行うことができ

関連する問題