使用Visual Studio检测到额外的换行符

时间:2015-11-13 06:23:55

标签: c# notepad

当我在visual studio中读取我的txt文件时,它显示了额外的换行符,但是当我用记事本打开同一个文件时,它没有显示这些换行符。

我正在使用System.IO.File

读取我的文件
var file = File.ReadAllLines(AppDomain.CurrentDomain.BaseDirectory + "myfile.txt")

如何在没有这些不需要的换行符的情况下读取文件。 不想替换.replace("\r\n",""),因为它也会替换所有真正的换行符。

编辑 刚试用NotePad ++ 使用Notepad ++

enter image description here

现在使用普通记事本

enter image description here

2 个答案:

答案 0 :(得分:0)

如果你问如何更换重复的新行,那么传统的(和懒惰的和错误的)方法就是:

text=text.Replace("\r\n\r\n","\r\n");

答案 1 :(得分:0)

您的Notepad ++屏幕截图非常清楚地显示了问题。在某些行的末尾有多个换行符(换句话说就是空行)。

 var alllines =  File.ReadAllLines(AppDomain.CurrentDomain.BaseDirectory +  "myfile.txt")

 var validlines = alllines.Where(l=>!string.IsNullOrEmpty(l));

现在在代码中使用有效行而不是所有行