你好,我正在从C#的文本文件中读取两行数据,在文件的末尾我得到错误"Object reference not set to an instance of an object“。我知道这个错误是因为文件结束,对象被赋值为空值。但是我需要避免这个错误。我的代码格式如下:
try
{
sting line;
while ((line = file.ReadLine().Trim()) != null)
{
//do something
if ((line2 = file.ReadLine().Trim()) != null)
//do something
}
}
catch(exception e)
{
console.write(e.Message);
}
在文件的末尾,是它异常的地方。
提前感谢您的帮助。
发布于 2018-06-28 01:17:48
问题是,在检查结果是否为空之前,代码对ReadLine()
的结果调用Trim()
。
来自How to: Read a Text File One Line at a Time (Visual C#)
while((line = file.ReadLine()) != null)
{
// Do something with line
}
还要注意的是,通常最好避免在循环中再次调用ReadLine()
。
发布于 2018-06-28 01:24:45
使用?运算符,如:
file.ReadLine()?.Trim()
https://stackoverflow.com/questions/51068216
复制相似问题