StreamReader sr = new  StreamReader(@"d:\writer.psv");//给了个初始值才解决,但是实际没用到if(openDialog.ShowDialog() == DialogResult.OK)

sr = new  StreamReader(openDialog.FileName);//还是要靠这里赋值

string line;line = sr.ReadLine();//说sr 没有赋值,怎么解决?

解决方案 »

  1.   

    加个{}就搞定了:)if(openDialog.ShowDialog() == DialogResult.OK){
       sr = new  StreamReader(openDialog.FileName);
       string line;
       line = sr.ReadLine();//
    }
      

  2.   

    我感觉C#的语法非常严谨,编译时,它是不容许使用可能没有赋值的变量的.
    程序这样改就可以通过编译了.
    StreamReader sr=null;if(openDialog.ShowDialog() == DialogResult.OK)

    sr = new  StreamReader(openDialog.FileName);

    string line;line = sr.ReadLine();//说sr 没有赋值,怎么解决?但是真的是这样的化你的程序在运行时就有可能报异常.