我在Microsoft Visual Studio 2010中使用C#进行编程。 在我的代码中的某个地方,我在检查行的值是否为空之后在while循环中使用break关键字。
我确信行值为null但仍然是break命令不起作用。 我该如何解决这个问题?
while (!myfile.EndOfStream)
{
string line = myfile.ReadLine();
if (line == null) { break; }
else
{ ...}
}
答案 0 :(得分:8)
它不为空,你得到一个空字符串或带有空格的字符串(换行符等)。 如果您将支票修改为:
,则会更好if (string.IsNullOrWhiteSpace(line)) { break; } //checks null and white space
// or empty string
String.IsNullOrWhiteSpace随.Net framework 4.0或更高版本提供。
答案 1 :(得分:1)
不需要空检查。它已经由EndOfStream
检查强制执行。它可以删除。