当前位置 : 主页 > 编程语言 > c语言 >

c# – 从文本文件中删除最后一行

来源:互联网 收集:自由互联 发布时间:2021-06-25
我需要从文本文件中删除最后一行.我知道如何在C#中打开和保存文本文件,但是如何删除文本文件的最后一行? 文本文件总是不同的大小(有些有80行,有些有20行). 有人可以告诉我该怎么
我需要从文本文件中删除最后一行.我知道如何在C#中打开和保存文本文件,但是如何删除文本文件的最后一行?

文本文件总是不同的大小(有些有80行,有些有20行).

有人可以告诉我该怎么做吗?

谢谢.

使用少量线条,您可以轻松使用这样的东西

string filename = @"C:\Temp\junk.txt";

string[] lines = File.ReadAllLines(filename);
File.WriteAllLines(filename, lines.Take(lines.Count() - 1));

但是,随着文件变大,您可能希望使用类似的方式将数据流入和流出

string filename = @"C:\Temp\junk.txt";
string tempfile = @"C:\Temp\junk_temp.txt";

using (StreamReader reader = new StreamReader(filename))
{                
    using (StreamWriter writer = new StreamWriter(tempfile))
    {
        string line = reader.ReadLine();

        while (!reader.EndOfStream)
        {
            writer.WriteLine(line);
            line = reader.ReadLine();
        } // by reading ahead, will not write last line to file
    }
}

File.Delete(filename);
File.Move(tempfile, filename);
网友评论