a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C# > 正文

c#在控制臺輸出彩色文字的方法

2020-01-24 03:32:58
字體:
來源:轉載
供稿:網友

“Hello World!”的程序寫過不少,不過都是在黑色背景的控制臺上顯示白色的文字。這次決定寫點特別的,讓“Hello World!”變成彩色的文字。

示例代碼如下:

復制代碼 代碼如下:

using System;
using System.Runtime.InteropServices;

[assembly:CLSCompliant(true)]
namespace ColorConsole
{
    public sealed class HelloWorld
    {
        private HelloWorld() { }

        public static void Main()
        {
            const UInt32 STD_OUTPUT_HANDLE = unchecked((UInt32)(-11));
            IntPtr consoleHandle = NativeMethods.GetStdHandle(STD_OUTPUT_HANDLE);

            string s = "Hello World!";

            for (int i = 0; i < s.Length; i++)
            {
                NativeMethods.SetConsoleTextAttribute(consoleHandle, (ushort)(i + 1));
                Console.Write(s[i]);
            }

            Console.ReadLine();
        }
    }

    class NativeMethods
    {
        private NativeMethods() { }

        [DllImport("Kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]
        public static extern IntPtr GetStdHandle(UInt32 type);

        [DllImport("Kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]
        [return: MarshalAs(UnmanagedType.U1)]
        public static extern bool SetConsoleTextAttribute(IntPtr consoleHandle, ushort attributes);  
    }
}

主要用到的方法是GetStdHandle與SetConsoleTextAttribute。前者取得控制臺的句柄,后者設置控制臺的文字顏色。

循環語句中將字符串的每個字符設置為不同的顏色,逐一顯示出來,最終成為一串彩色的文字。

至于代碼的實際用途嗎,我想在控制臺上輸出日志的時候可能會有作用。尤其是要醒目地顯示不同類型日志的場合下,比如可以將錯誤,警告和信息類型的日志分別用紅色,黃色與通常的白色區別開來。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91在线国产观看 | 一区二区免费视频观看 | 国产成人精品一区二区视频免费 | 天堂一区二区三区四区 | 欧美99 | 大黑人交xxx极品hd | 久久精品中文字幕 | 国产欧美精品一区二区三区四区 | 美女福利网站 | 国产精品久久久久毛片软件 | 亚洲午码 | 久久22| 蕉伊人| 久久久在线视频 | 亚洲美女视频一区二区三区 | 九九热精品免费 | 欧美精品一区二区三区免费视频 | 大黑人交xxx极品hd | 99在线免费视频 | 亚洲成av人乱码色午夜 | 在线一区二区三区 | 成人亚洲精品久久久久软件 | 国产一级色 | 2018国产大陆天天弄 | 五月婷婷国产 | 久久久久久久久久一本门道91 | 精品国产乱码久久久久久1区2区 | 中国一级大黄大黄大色毛片 | 国产 日韩 欧美 中文 在线播放 | 日韩成人av在线 | 日韩精品视频免费专区在线播放 | 精品视频一区二区在线 | 99re免费视频精品全部 | 婷婷色综合 | 爱爱视频免费 | 91电影院 | 中文字幕在线看 | 国产综合精品 | 久久久久久久av | 久久久成人av | 五月婷婷在线观看 |