using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace WIDESEAWCS_Core.Helper { public static class ConsoleHelper { private static readonly object _objLock = new(); /// <summary> /// 在控制å°è¾“出 /// </summary> /// <param name="str">文本</param> /// <param name="color">å‰é¢œè‰²</param> public static void WriteColorLine(string str, ConsoleColor color) { lock (_objLock) { 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 WriteColorLine(object str, ConsoleColor color) { lock (_objLock) { 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); } }