0

我无法解决这个错误!我在 VisualStudio 2010 中第二行的 outfile 下面有一个红色下划线。我已经完全按照书中的内容编写了代码。

FileStream outFile = new FileStream("movies.txt", FileMode.Create, FileAccess.Write);
StreamWriter writer = new StreamWriter(outFile);

错误消息:字段初始值设定项无法引用非静态字段、方法或属性“MyMovies.FileManager.outFile”

如果可以在文件中的选定行保存或替换文本字符串,我还有一个关于保存文本文件的问题?

编辑:我用来保存的代码

 StreamWriter writer = File.CreateText("MinaFilmer/filmer.txt");
 writer.WriteLine("Test");
4

1 回答 1

1

我怀疑在书中,这些是局部变量,在方法中声明 - 而您直接在类中将它们声明为实例变量。

真的希望这些是实例变量吗?两个都?在可能的情况下,我会尝试仅在一个方法内执行此操作,因此您可以将所有清理工作保留在该方法的本地。

可以这样写:

StreamWriter writer = new StreamWriter(new FileStream("movies.txt", 
                                          FileMode.Create, FileAccess.Write));

虽然你会更好:

StreamWriter writer = File.CreateText("movies.txt");

然后:

如果可以在文件中的选定行保存或替换文本字符串,我还有一个关于保存文本文件的问题?

我们需要更多细节来回答这个问题,这确实是一个单独的问题,应该单独提出。

于 2012-06-02T07:05:38.680 回答