读书人

一个try catch finally的有关问题

发布时间: 2012-01-29 21:39:32 作者: rapoo

一个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 正解

读书人网 >C#

热点推荐