在使用它将文件加载到字符串变量中时,是否需要在C#中显式关闭StreamReader?

例:

variable = new StreamReader( file ).ReadToEnd();

这是可以接受的吗?

不,这不会关闭StreamReader。你需要关闭它。使用这个为你(和处置,所以它的GC’d更快):

using (StreamReader r = new StreamReader("file.txt"))
{
  allFileText = r.ReadToEnd();
}

或者在.Net 2中,您可以使用新文件。静态成员,那么你不需要关闭任何东西:

variable = File.ReadAllText("file.txt");
翻译自:https://stackoverflow.com/questions/4136490/do-i-need-to-explicitly-close-the-streamreader-in-c-sharp-when-using-it-to-load

转载注明原文:在使用它将文件加载到字符串变量中时,是否需要在C#中显式关闭StreamReader?