C# 控制台应用程序输出颜色字体[更正版]

时间:2022-02-08 04:12:38

首先感谢院子里的“yanxinchen”,之前的方法是通过c#调用系统api实现的,相比之下我的有点画蛇添足了,哈哈。

最佳解决方案的代码:

 

C# 控制台应用程序输出颜色字体[更正版]
static void Main(string[] args)
{
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("Hello, color text!");
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("Hello, color text!");
Console.ReadKey();
}
C# 控制台应用程序输出颜色字体[更正版]

效果如图:C# 控制台应用程序输出颜色字体[更正版]

 

=================================================================================

我之前的代码如下(已过时):

控制台应用程序字体本身不能输出带颜色的字体,所有就需要调用系统的api实现,下面是一个封装好的类,另赋调用的方法,使用起来很方便,效果如图:

C# 控制台应用程序输出颜色字体[更正版]

封装调用系统api的类ConsoleColor.cs代码如下:

C# 控制台应用程序输出颜色字体[更正版]ConsoleColor.cs

在Main方法的调用代码如下:

 

C# 控制台应用程序输出颜色字体[更正版]
ConsoleColor TextChange = new ConsoleColor();
Console.WriteLine("Original Colors");
Console.WriteLine("Press Enter to Begin");
Console.ReadLine();
TextChange.TextColor((int)ConsoleColor.Foreground.Green +
(int)ConsoleColor.Foreground.Intensity);
Console.WriteLine("THIS TEXT IS GREEN");
Console.WriteLine("Press Enter to change colors again");
Console.ReadLine();
TextChange.TextColor((int)ConsoleColor.Foreground.Red +
(int)ConsoleColor.Foreground.Blue +
(int)ConsoleColor.Foreground.Intensity);
Console.WriteLine("NOW THE TEXT IS PURPLE");
Console.WriteLine("Press Enter to change colors again");
Console.ReadLine();
TextChange.TextColor((int)ConsoleColor.Foreground.Blue +
(int)ConsoleColor.Foreground.Intensity +
(int)ConsoleColor.Background.Green +
(int)ConsoleColor.Background.Intensity);
Console.WriteLine("NOW THE TEXT IS BLUE AND BACKGROUND OF IT IS GREEN");
Console.WriteLine("Press Enter change everything back to normal");
Console.ReadLine();
TextChange.ResetColor();
Console.WriteLine("Back to Original Colors");
Console.WriteLine("Press Enter to Terminate");
Console.ReadLine();
C# 控制台应用程序输出颜色字体[更正版]