Console.SetError(TextWriter)方法设置指定StreamWriter的Error属性,即,它将标准错误流重定向到文件。由于使用此StreamWriter对象设置了控制台,因此可以调用WriteLine()方法将错误写入文件中。
Syntax: public static void SetError (System.IO.StreamWriter newError);
Parameter:
newError: It is a stream which is the new standard error output.
异常:如果传递的参数为null,则此方法将引发ArgumentNullException。另外,由于它使用StreamWriter对象,因此还应注意其异常情况。
示例:在此示例中,使用SetError()方法将StreamWriter对象设置为控制台,并且错误消息将从控制台写入日志文件。
// C# program to demonstrate
// the SetError() method
using System;
using System.IO;
class GFG {
// Main Method
static void Main()
{
// Define file to receive error stream.
string fn = "F:\\gfg_error.log";
// Define the new error StreamWriter object
StreamWriter errStream = new StreamWriter(fn);
// Redirect standard error stream to file.
Console.SetError(errStream);
// Write the error message into the Log file
Console.Error.WriteLine("Error line is written into the log file.");
Console.Error.WriteLine("Keep coding geeks!");
// Close redirected error stream.
Console.Error.Close();
}
}
输出: gfg_error.log文件现在将包含错误消息。
参考:
- https://docs.microsoft.com/zh-cn/dotnet/api/system.console.seterror?view=netframework-4.7.2#System_Console_SetError_System_IO_TextWriter_