.NetCore·控制台输出自定义颜色的Helper
阅文时长 | | 0.83分钟 | 字数统计 | | 1334.4字符 |
主要内容 | | 1、引言&背景 2、测试方法及解决方案 3、声明与参考资料 | ||
『.NetCore·控制台输出自定义颜色的Helper』 | |||
编写人 | | SCscHero | 编写时间 | | 2021/7/24 PM7:34 |
文章类型 | | 系列 | 完成度 | | 已完成 |
座右铭 | 每一个伟大的事业,都有一个微不足道的开始。 |
一、引言&背景 完成度:100%
a) 应对问题
在.Net/C#程序中,如何输出类似于如图的带不同颜色的输出?
b) 应对场景
在开发环境下控制台做相关提示,如连接数据库、网关、配置中心失败,可以返回一个显眼的红色Error。
c) 解决原理&方法
临时更改Console类下的ForegroundColor成员的枚举值。
二、测试方法及解决方案 完成度:100%
a) 测试方式
using System;
namespace _00057._Console_dotnet5_Console控制台输出不同颜色Helper
{
class Program
{
static void Main(string[] args)
{
ConsoleHelper.WriteErrorLine("Error");
ConsoleHelper.WriteSuccessLine("Succeed");
ConsoleHelper.WriteInfoLine("CustomColor",ConsoleColor.Cyan);
ConsoleHelper.WriteWarningLine("Warning");
"expandMethod".WriteInfoLine(ConsoleColor.Red);
Console.ReadKey();
}
}
}
b) 实现代码
using System;
namespace _00057._Console_dotnet5_Console控制台输出不同颜色Helper
{
public static class ConsoleHelper
{
static void WriteColorLine(string str, ConsoleColor color)
{
ConsoleColor currentForeColor = Console.ForegroundColor;
Console.ForegroundColor = color;
Console.WriteLine(str);
Console.ForegroundColor = currentForeColor;
}
/// <summary>
/// 打印错误信息
/// </summary>
/// <param name="str">待打印的字符串</param>
/// <param name="color">想要打印的颜色</param>
public static void WriteErrorLine(this string str, ConsoleColor color = ConsoleColor.Red)
{
WriteColorLine(str, color);
}
/// <summary>
/// 打印警告信息
/// </summary>
/// <param name="str">待打印的字符串</param>
/// <param name="color">想要打印的颜色</param>
public static void WriteWarningLine(this string str, ConsoleColor color = ConsoleColor.Yellow)
{
WriteColorLine(str, color);
}
/// <summary>
/// 打印正常信息
/// </summary>
/// <param name="str">待打印的字符串</param>
/// <param name="color">想要打印的颜色</param>
public static void WriteInfoLine(this string str, ConsoleColor color = ConsoleColor.White)
{
WriteColorLine(str, color);
}
/// <summary>
/// 打印成功的信息
/// </summary>
/// <param name="str">待打印的字符串</param>
/// <param name="color">想要打印的颜色</param>
public static void WriteSuccessLine(this string str, ConsoleColor color = ConsoleColor.Green)
{
WriteColorLine(str, color);
}
}
}
三、声明与参考资料 完成度:100%
原创博文,未经许可请勿转载。
如有帮助,欢迎点赞、收藏、关注。如有问题,请评论留言!如需与博主联系的,直接博客私信SCscHero即可。