我需要一种在一段时间后清除文本文件的方法。这是我目前所拥有的
List<string> previousWeaponList = new StreamWriter("PreviousList.txt");
所以这是在请求武器后将先前的武器列表读入文件,武器被写入该列表。一旦我这样做了,我就有了一个文件,如果我保存每一个请求,它会很快变满,这就是为什么我需要每隔 X 时间清理一次它。
这样可以吗?
private Thread fileCleaner;
public void FileCleaner()
{
fileCleaner = new Thread(new ThreadStart(this.Run))
}
然后只有一个运行函数,如果它是真的,它只会写入文件,然后使用一个
Thread.Sleep();
我听说使用 Threads 来节省时间不是一个好主意,但我不是这方面的专家。
最佳答案
使用 Timer , 并将其 Elapsed
事件的回调设置为文件清理方法。
var timer = new Timer(10000);
timer.Elapsed += (s, e) => File.Delete("C:\\your_file.txt");
timer.Enabled = true;
如果您需要停止计时器,请将 timer.Enabled
设置为 false
。
关于c# - X 时间后清除文件内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39774447/