无法使用StreamReader方法

时间:2016-02-27 10:27:45

标签: c# string streamreader

我正在尝试使用 StreamReader 方法读取文本文件,但它不起作用。我研究所有主题和论坛,但解决方案不适用于我的项目。我的文本文件位于c / users / user / documents / VS15 / Projects / MyProject / here

string filename = "text.txt";
    TextReader fi = new StreamReader(filename);

我收到此错误:

  

“字段初始值设定项不能引用非静态字段,方法或属性'MainPage.filename'”

导致此错误的原因是什么?

2 个答案:

答案 0 :(得分:0)

尝试将其放在方法中,例如:

static void Main(string[] args)
{
    string filename = "text.txt";
    TextReader fi = new StreamReader(filename);
}

或将变量设为静态:

public static string filename = "text.txt";

答案 1 :(得分:0)

这是一个编译时错误。将代码移动到方法体。改变自:

class C {

    string filename = "text.txt";
    TextReader fi = new StreamReader(filename);

    private void myMethod() {
        // ....
    }

}

为:

class C {

    string filename = "text.txt";

    private void myMethod() {
         TextReader fi = new StreamReader(filename);
         // ....
    }

}

或将代码放在构造函数中:

class C {

    string filename = "text.txt";
    TextReader fi;

    public C() {
         fi = new StreamReader(filename);
    }

    private void myMethod() {
         // you can use the fi variable here
    }

}