如何删除/擦除/删除主机文件中的空行

本文关键字:删除 文件 主机 擦除 何删除 | 更新日期: 2023-09-27 17:58:48

我想专门从主机文件中删除空白行。

假设主机文件有25行,其中4行完全为空,我们假设这4行为最后4行。所以我希望在21行之后,所有的空行都将被删除,然后主机文件将被保存。

我不知道&没有这样做的代码。。如果可以的话,请帮我。

如何删除/擦除/删除主机文件中的空行

string path = @"C:'Windows'System32'drivers'etc'hosts";
File.WriteAllLines(path, File.ReadAllLines(path).Where(l => !string.IsNullOrWhiteSpace(l)));

旧.Net版本:

string path = @"C:'Windows'System32'drivers'etc'hosts";
File.WriteAllLines(path, File.ReadAllLines(path).Where(l => l.Trim().Length > 0));

您可以实现这样的东西:

string tempFile = Path.GetTempFileName();
using(var sr = new StreamReader("file.txt"))
using(var sw = new StreamWriter(tempFile))
{
    string line;
    while((line = sr.ReadLine()) != null)
    {
         if(line != "removeme")
             sw.WriteLine(line);
    }
}
File.Delete("file.txt");
File.Move(tempFile, "file.txt");