2016-07-23 105 views
1

我正在尝试使用控制台在文件中编写代码。我成功完成了它。但问题是,关闭我的文件之间的连接后,我无法在控制台中写入。我正确与文件断开连接。我的代码中有没有问题?在写入文件后无法在控制台中写入

 var outfilename = Path.Combine(Environment.CurrentDirectory, "name.txt"); 
     var outname = new StreamWriter(outfilename); 
     Console.SetOut(outname); 

     Console.WriteLine("aiiii"); 
     outname.Close(); 
     Console.SetOut(new StreamWriter(Console.OpenStandardOutput())); 

     Console.Write("hai"); 
     string nam1=Console.ReadLine(); 
     Console.WriteLine(nam1); 
     Console.ReadLine(); 

回答

1

用途:

StreamWriter standardOutput = new StreamWriter(Console.OpenStandardOutput()); 
standardOutput.AutoFlush = true; 
Console.SetOut(standardOutput); 
0

您可以保存默认的输出作家和重置:

var defaultOut = Console.Out; 

var outfilename = Path.Combine(Environment.CurrentDirectory, "name.txt"); 
var outname = new StreamWriter(outfilename); 
Console.SetOut(outname); 

Console.WriteLine("aiiii"); 
outname.Close(); 
Console.SetOut(defaultOut); 

Console.Write("hai"); 
string nam1 = Console.ReadLine(); 
Console.WriteLine(nam1); 
Console.ReadLine();