閱文時長 | | 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即可。