Just look at the wrong place in the source code.
Using system;using system.collections.generic;using system.linq;using system.text;using System.IO;namespace Filestreamtest{class Program {static void Main (string[] args) {string file = @ "D:\temp.t XT "; FileStream FileStream; if (file.exists (file)) {FileStream = File.openread (file); } else {fileStream = File.create (File); }//Use of the StreamWriter is used here, which causes the flow of the FileStream to be closed using (StreamWriter writer=new StreamWriter (f) After the end of the domain Ilestream)) {writer. WriteLine ("Test some plain text!"); }//The file stream that was passed in to FileStream has been closed, so it will run the Times wrong using (StreamReader reader=new StreamReader (FileStream)) {Console.WriteLine (reader). ReadLine ()); } filestream.close (); Filestream.dispose (); } }}
The solution is to reuse the stream, instead of using a using block, or passing the file name to StreamWriter, StreamReader constructs, rather than the previous FileStream.
FileStream instance reuse take care