如何截断/删除文件中的内容,直到达到特定大小

时间:2016-08-11 09:05:26

标签: c#-4.0

我的文本文件大小约为10 KB,我需要从文件开头逐个删除行,并且需要在文件达到5 KB时停止。我使用了下面这段代码,但它没有给我准确的结果我想看到的(例如:如果我想将它减少到5 KB,它会在达到6.5 KB时停止)

cacheCutOffSize = 5 * 1024; //(in KB)
using (StreamWriter sr = new StreamWriter(fileName))
        {
            sr.AutoFlush = true;
            while ((sr.BaseStream.Length < cacheCutOffSize) && lines.Count > 0) //*8
            {
                sr.WriteLine(strng);
                lines.RemoveAt(0);
                strng = lines[0];
            }

        }

有没有更好更准确的方法呢?

0 个答案:

没有答案