Разноцветные символы в ОДНОЙ строке в консоли C # - PullRequest
0 голосов
/ 16 января 2019

Как можно распечатать разноцветные символы в одну строку , используя только основные команды , например Console.Write и Console.WriteLine? Например мне нужно что-то вроде:

Console.WriteLine($"red{M}green{U}blue{L}yellow{T}purple{I}");

, где M, U и L - это разные значения, например int или string.

Ответы [ 2 ]

0 голосов
/ 16 января 2019

Вы можете использовать словарь, как показано ниже в коде, а затем цикл:

Dictionary<int, KeyValuePair<string, ConsoleColor>> keyValuePairs = new Dictionary<int, KeyValuePair<string, ConsoleColor>>();
keyValuePairs.Add(1, new KeyValuePair<string, ConsoleColor>("my blue text", ConsoleColor.Blue));
keyValuePairs.Add(2, new KeyValuePair<string, ConsoleColor>("my red text", ConsoleColor.Red));



foreach (var keyItem in keyValuePairs.Keys)
        {
            ConsoleColor color = keyValuePairs[keyItem].Value;
            string textTobeDisplayed = keyValuePairs[keyItem].Key;

            Console.ForegroundColor = color;
            Console.Write(textTobeDisplayed);
        }
0 голосов
/ 16 января 2019

Я надеюсь, что это поможет вам

class Program
{
    static void Main(string[] args)
    {
        Console.ForegroundColor = ConsoleColor.Blue;
        Console.Write("White on Blue.");
        Console.ForegroundColor = ConsoleColor.Red;
        Console.Write("White on Red.");
        Console.ResetColor();
        Console.ReadLine();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...