メイン プログラムが実行されるたびに、約 6 行 (合計で約 50 文字) がログ ファイルに書き込まれます。
このファイルが無限に大きくならないようにするにはどうすればよいですか? ファイルの末尾に新しいテキストを追加し、ファイルの先頭にあるテキストを削除して、ファイルを 2 MB 未満に保ちたいと思います。
FileInfo txtfile = new FileInfo(nameOfFile);
if (txtfile.Length > (2 * 1024 * 1024)) // ## NOTE: 2MB max file size
{
var lines = File.ReadAllLines(nameOfFile).Skip(10).ToArray(); // ## Set to 10 lines
File.WriteAllLines(nameOfFile, lines);
}
上記のコードは、ファイルが 2MB (ディスク上のサイズではなくサイズ) を超える場合にのみ実行されます。ファイルから最初の 10 行を削除し、残りの行をファイルに書き戻します。
かなり小さなコードで必要な方法でこれを機能させることができたので、ここで共有して、同じ質問をする人を減らすのに役立つと思いました. うまくいけば、同じ問題を抱えている人々に役立ちます。
私のソリューションでは、このプロセスに問題はまだ見つかっていませんが、これが正しくない場合は、お気軽にコメントを追加してください。
Web アプリケーションの場合、最大要求長の値も定義できます。
<system.web>
<httpRuntime maxRequestLength="15000" />
</system.web>