Длина символа Unicode в байтах составляет 2 , и вы записываете Length
в консоль.
Console.WriteLine(unicode.Length);
Если вы хотите отобразить фактический символ, то вы хотите:
Console.WriteLine(myString);
Вы должны использовать шрифт с таким диапазоном Юникода, чтобы он отображался правильно.
ОБНОВЛЕНИЕ:
При использовании шрифта консоли по умолчанию вышеприведенный Console.WriteLine(myString)
будет выводить символ ?
, поскольку \u2649
отсутствует.Насколько я до сих пор гуглил, не существует простого способа заставить консоль отображать символы Юникода, которые еще не являются частью системных кодовых страниц или шрифта, выбранного для консоли.
Может быть возможно изменить шрифт, используемый консолью: Изменение шрифтов консоли