1

ログファイルを空にする方法については、さまざまな説明があります。

お気に入り:

File.WriteAllText(activeTab.FileName, string.Empty);

しかし、この例と私が見つけた他の例はすべて同じ問題を抱えています。ログファイルが現在別のプロセスによってロックされている場合は機能しません。

ルビーには、rake log:clear削除せずにログファイルを空にするだけのタスクがあります。

を使用して Powershell でこれを実行できることもわかりましたclc <filename>。ソースは現在ここで入手できます。

https://github.com/PowerShell/PowerShell/blob/c1faf1e6e10fc1ce45e84ef6f49ae7136c67a111/src/Microsoft.PowerShell.Commands.Management/commands/management/ClearContentCommand.cs

しかし、正直なところ、このコードがどのように機能するかはわかりません。また、他のクラスから継承しています。

一般的なプログラム/クラスで使用できる C# 実装はありますか?

4

1 に答える 1

0

私の場合、このスニペットを使用してファイルをクリアできることがわかりました。

  var stream = new FileStream(FileName, FileMode.Truncate, FileAccess.ReadWrite, FileShare.ReadWrite | FileShare.Delete);
  stream.Close();
于 2016-09-15T13:05:59.130 に答える