📜  调试输出到控制台和日志 - C# (1)

📅  最后修改于: 2023-12-03 14:57:45.178000             🧑  作者: Mango

调试输出到控制台和日志 - C#

在 C# 开发中,调试是一门必不可少的技能。调试输出是打印程序状态和信息的重要方式,通常包括控制台输出和日志输出。本文将介绍 C# 中如何实现调试输出到控制台和日志。

控制台输出

控制台是调试输出的最基本形式。在 C# 中,用 Console 类输出到控制台。Console 类提供了多种方法来输出不同类型的信息。

以下是 Console 类的一些输出方法:

Console.Write(1); // 输出整数「1」
Console.Write("Hello"); // 输出字符串「Hello」
Console.Write(true); // 输出布尔值「True」

以上方法输出后的结果都是直接连续输出在同一行上。

如果想换行输出,可以使用下面的方法:

Console.WriteLine(1); // 输出整数「1」并换行
Console.WriteLine("Hello"); // 输出字符串「Hello」并换行
Console.WriteLine(true); // 输出布尔值「True」并换行

输出结果:

1
Hello
True

除了上述基本数据类型,Console 还能够输出各种对象,例如:

Object obj = new Object();
Console.WriteLine(obj); // 输出对象「Object」

以下是输出结果:

System.Object
日志输出

除了控制台输出以外,在 C# 中也可以通过日志输出调试信息,以便更好地追踪程序状态。可以使用 System.Diagnostics 命名空间中的 Trace 和 Debug 类开始记录日志信息。

在 Trace 和 Debug 类中,Debug 类只在调试应用程序时输出日志,而 Trace 类在任何安装了调试器的情况下都会输出日志。以下示例演示了如何记录日志信息:

Debug.WriteLine("Debug output"); // 只会在 Debug 模式下输出
Trace.WriteLine("Trace output"); // 在任何情况下都会输出

在执行上述代码后,可以在“输出”窗口中看到以下输出结果:

Trace output

为了在控制台中查看 Trace 输出,可以将以下代码添加到 Main 方法的开头:

ConsoleTraceListener consoleListener = new ConsoleTraceListener();
Debug.Listeners.Add(consoleListener);
Trace.Listeners.Add(consoleListener);

在添加处理程序后,可以通过以下方式在控制台中查看 Trace 输出:

System.Diagnostics.Debugger.Launch();

这行代码会在程序运行时,弹出调试器对话框。如果按下“确定”按钮,调试器将附加到程序的进程,并在控制台中输出 Trace 日志。

总结

本文介绍了在 C# 中如何实现调试输出到控制台和日志。控制台输出是最基本的输出形式,可用于输出各种类型的信息。日志输出则是一种更高级的形式,可以方便地追踪程序状态。建议在开发过程中使用这两种方式进行调试,在程序运行时可实时追踪并输出信息,方便快捷。