如何删除TXT文件的第一行
本文关键字:一行 TXT 何删除 删除 文件 | 更新日期: 2023-09-27 18:08:30
我是c#新手。
我想删除文本文件的第一行
基本上你需要将其复制到另一个文件中-你不能在文件中"就地"删除(或插入)数据。例如,在。net 4中很容易:
var lines = File.ReadLines("input.txt").Skip(1);
File.WriteAllLines("output.txt", lines);
在。net的旧版本中,它稍微多了一些工作,至少如果你想避免将整个文件加载到内存中,但仍然不是太难。如果您需要旧版本的代码,请告诉我(并说明是哪一个)。
编辑:正如在注释中讨论的,如果您愿意将整个文件加载到内存中,您可以直接写回同一个文件:
// Note that ReadAllLines is eager, not lazy like ReadLines
var lines = File.ReadAllLines("file.txt").Skip(1);
File.WriteAllLines("file.txt", lines);
System.IO.StreamReader fileR = new System.IO.StreamReader(filePath);
string data = fileR.ReadToEnd();
fileR.Close();
string firstline = data.Substring(0, data.IndexOf(''n') + 1);
data = Regex.Replace(data, firstline, "");
StreamWriter file = new StreamWriter(filePath, false);
file.Write(data);
file.Close();
从文本文件中删除第一行
System.IO.StreamReader file = new System.IO.StreamReader(filePath);
string data = file.ReadToEnd();
file.Close();
data = Regex.Replace(data, "<.*'n", "");
System.IO.StreamWriter file = new System.IO.StreamWriter(filePath, false);
file.Write(data);
file.Close();
也可以一行完成
File.WriteAllLines(origialFilePath,File.ReadAllLines(originalFilePath).Skip(1));
我假设你给originalFilePath作为函数参数