gpt4 book ai didi

c# - 删除文本文件中的空行

转载 作者:太空宇宙 更新时间:2023-11-03 18:23:28 25 4
gpt4 key购买 nike

我喜欢导出一个文本文件,供某些无法处理空行或空行的 PLC 读取。 WriteLine 中的\r\n 在文本文件的末尾生成一个空行,我想不出不生成它或删除它的方法。

这就是我生成和编写行的方式:

List<string> lines = new List<string>();
lines.Add(...);
foreach (string line in lines)
{
file.WriteLine(line);
}

我尝试删除包含以下代码的行,但最后的空行仍然存在:

List<string> lines = File.ReadAllLines(path).Where(arg => !string.IsNullOrWhiteSpace(arg)).ToList();
File.WriteAllLines(path, lines);

我也试过删除最后一行,但当然它删除了最后一行而不是回车..

lines = lines.GetRange(0, lines.Count - 1);

图片以图形方式展示了问题(左)和我想要实现的目标(右)

enter image description here

最佳答案

首先不生成空行将解决您的问题,因为您每次都调用 WriteLine,它会在每个末尾添加 \r\n行,包括最后一行。您可以改用 for 循环并检查您是否正在编写最后一行,调用 Write 方法而不是 WriteLine:

for(int i=0; i < lines.Length; i++)
{
if(i == lines.Length - 1)
{
file.Write(line);
}
else
{
file.WriteLine(line);
}
}

关于c# - 删除文本文件中的空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42781115/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com