重定向Console.Write ...调试时Visual Studio的输出窗口的方法

AMi*_*ico 32 debugging console-application visual-studio

Visual Studio中控制台应用程序项目,我想在调试时将输出重定向到输出窗口.Console

Ale*_*x F 27

调试前将应用程序类型更改为Windows.如果没有Console窗口,Console.WriteLine就像Trace.WriteLine一样工作.调试后不要忘记将应用程序重置回Console类型.


dka*_*man 17

    class DebugWriter : TextWriter
    {        
        public override void WriteLine(string value)
        {
            Debug.WriteLine(value);
            base.WriteLine(value);
        }

        public override void Write(string value)
        {
            Debug.Write(value);
            base.Write(value);
        }

        public override Encoding Encoding
        {
            get { return Encoding.Unicode; }
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
#if DEBUG         
            if (Debugger.IsAttached)
                Console.SetOut(new DebugWriter());   
#endif

            Console.WriteLine("hi");
        }
    }
Run Code Online (Sandbox Code Playgroud)

**请注意,这几乎是伪代码.它工作但需要工作:)**


Nii*_*ke2 5

您可以将其更改为 System.Diagnostics.Debug.Write();