我有我认为是新的换行符\回车分页文件,我正在使用C#Stream Reader阅读,请参阅下面的摘录,第二行和第三行实际上是一行包含我所相信的在第二行“NL”之后回车。我已经尝试使用下面的代码来确定是否存在新行\回车,但没有运气。
有人可以帮忙吗?
代码提取
string line = sr.ReadLine();
if (line.EndsWith(Environment.NewLine))
{
MessageBox.Show("New line detected");
}
文件摘录
1224 TX68176 FR123 0.2241 2788848 JP31650 B62G7K6 J7618E108 8630
----------
1225 TX68176 NL
----------
128 0.2241 2788848 JP3165000 B62G7K6 J7618E108 8630
答案 0 :(得分:0)
因为您正在阅读使用ReadLine的行,所以在行尾不会得到Environment.NewLine
。你真正的问题是你有一行数据,你可能希望它是一行,分成多行。您获得的异常并非来自您阅读的行中的换行符,并且您不会通过尝试检测换行符来修复它。
问题可能来自你的代码的其余部分,期望行中的字段不存在,因为这部分代码读取的文本数据行只是部分数据行。其余的代码扼杀了没有获得该数据行中的所有字段。要检测到您只有部分数据线,您可能需要检测行长度,因为它似乎是一个固定长度的格式化文件,或者在使用制表符拆分后检测字段数。