Streamreader 初始化文本文件,每行之间有一个空行
Streamreader initialization with a text file that has an empty line each other line
我遇到了一个非常奇怪的问题。我试图用一个文件名和一个编码参数初始化一个流reader,但是我的代码失败了,因为该文件每行都包含一个空行。
我想做的是阅读列表中的行。如果文件不包含空行,则代码成功执行。
我正在像这样初始化 reader
using (StreamReader reader = new StreamReader(filename, encoding))
{
//do stuff...
}
关于如何执行上述操作有什么想法吗?这是一个自动化过程,因此无法对文件进行手动篡改。
提前致谢
希望对您有所帮助:
using (StreamReader sr = new StreamReader(FileName)){
while (!sr.EndOfStream)
{
// read every line
line = sr.ReadLine();
// if line is empty
if (string.IsNullOrEmpty(line.Trim(' '))) // if you want to handle a line with a space as empty use trim for spaces
{
//... do something
}
}
}
当我使用 Notepad++ 保存文件时(没有更改文件上的任何内容,只需单击保存),似乎文件的编码被弄乱了,而且 Streamreader 不喜欢它。我现在可以正确解析它(如果不小心点击 "save")并且我可以使用
处理空行
string.IsNullOrWhiteSpace
谢谢大家的宝贵时间。
我遇到了一个非常奇怪的问题。我试图用一个文件名和一个编码参数初始化一个流reader,但是我的代码失败了,因为该文件每行都包含一个空行。
我想做的是阅读列表中的行。如果文件不包含空行,则代码成功执行。
我正在像这样初始化 reader
using (StreamReader reader = new StreamReader(filename, encoding))
{
//do stuff...
}
关于如何执行上述操作有什么想法吗?这是一个自动化过程,因此无法对文件进行手动篡改。
提前致谢
希望对您有所帮助:
using (StreamReader sr = new StreamReader(FileName)){
while (!sr.EndOfStream)
{
// read every line
line = sr.ReadLine();
// if line is empty
if (string.IsNullOrEmpty(line.Trim(' '))) // if you want to handle a line with a space as empty use trim for spaces
{
//... do something
}
}
}
当我使用 Notepad++ 保存文件时(没有更改文件上的任何内容,只需单击保存),似乎文件的编码被弄乱了,而且 Streamreader 不喜欢它。我现在可以正确解析它(如果不小心点击 "save")并且我可以使用
处理空行string.IsNullOrWhiteSpace
谢谢大家的宝贵时间。