删除文件的最后10个字符

nik*_*iko 2 c# file

我想删除文件的最后10个字符.假设字符串"hello i am a c# learner"是文件中的数据.

我只想要那个文件"hello i am a "."c# learner"应该在文件中删除作为字符串的文件的最后10个字符.

解:

  1. 将整个文件读入一个字符串并删除最后10个字符并写回字符串(但是当文件大小太大时,这种方法会失败,说一些200 MB的文件,当我们只需要最后一个文件时甚至不需要读取整个文件10个字符.所以我不能尝试这种方法)

  2. 我想在写模式下打开文件并将光标位置设置为这样file.seek(-10,SeekOrigin.End)并写入空字节file.writebye((byte)((char)' '));

但它似乎没有写任何文件.

任何人都可以告诉我更好的方法,而不是将整个文件读入字符串.

注意我使用c#来执行此操作

Ran*_*Guy 7

如果文件路径位于文本框中:

FileStream fs = new FileStream(textBox1.Text, FileMode.Open, FileAccess.ReadWrite);
fs.SetLength(fs.Length - 10);
fs.Close();
Run Code Online (Sandbox Code Playgroud)