如何为Console.WriteLine覆盖使用自己的类?

我希望我的ConsoleEngine类处理Console.WriteLine()方法。 我如何准备我的ConsoleEngine类来覆盖WriteLine()方法?

您可以创建一个派生自TextWriter的类:

 public class MyWriter : TextWriter { public override void Write(char value) { //Do something, like write to a file or something } public override void Write(string value) { //Do something, like write to a file or something } public override Encoding Encoding { get { return Encoding.ASCII; } } } 

并将Console输出设置为该类的实例:

 Console.SetOut(new MyWriter());