一个try catch finally的问题
想用try来捕获打开文件时的异常,为什么声明的 StreamReader din;
在finally里不能使用?
应该怎么做?
StreamReader din;
try
{
din = File.OpenText( "d:\\test1.txt ");
}
catch (FileNotFoundException ex)
{
MessageBox.Show(ex.Message);
}
finally
{
din.Close(); //为什么报 Use of unassigned local variable 'din '
}
------解决方案--------------------StreamReader din;
这里还没实例化 是个空引用
------解决方案--------------------din 应该在Try前头进行初始化
------解决方案--------------------StreamReader din;
try
{
din = File.OpenText( "d:\\test1.txt ");
}
catch (FileNotFoundException ex)
{
MessageBox.Show(ex.Message);
}
finally
{
if (din != null)
din.Close();
}
------解决方案--------------------楼主这样试试:
StreamReader din=null;
------解决方案--------------------Raya 正解