четвер, 20 квітня 2017 р.

Буква "і" в консолі.

Як відобразити українську букву "і" в консолі.

Коли я тільки починав програмувати я зіткнувся з проблемою відображення Української букви "і" в консолі. Як і більшість сучасних людей я одразу ж кинувся шукати рішення цієї проблеми в Інтернеті і побачив, що дана проблема турбує дуже багатьох, в той час як вирішення відоме небагатьом. В процесі пошуку я знаходив такі рішення як: заміняти Українську букву "і" на англійську методом автозаміни і просто зміною розкладки клавіатури, писати замість букви "і" цифру "1" або "!", а то і зовсім відмовитися від української мови і перейти на російську мову. Звичайно це не влаштовувало мене ніяким чином і я продовжував пошуки.


Рішення знайшлося в кодуванні тексту в самій консолі. Стандарт кодування консолі Windows використовує формат 866 і як виявилося в цьому кодуванні немає української букви "і" хоч букви "ї" та "є" присутні (припускаю що це могло бути зроблено по причині того, що англійська буква "і" візуально абсолютно ідентична українській і розробники або забули реалізувати прив'язку зображення до коду букви, або вважали що для українців не стане проблемою постійно змінювати розкладку клавіатури на англійську при необхідності написати букву "і"). На щастя в кодуванні 1251 це виправили і переведення тексту консолі в це кодування гарантує вирішення цієї проблеми. Це можливо реалізувати всього однією стрічкою коду:

Console.OutputEncoding = System.Text.Encoding.GetEncoding (1251);

До зміни кодування:

using System;
class Example {

static void Main() {
Console.WriteLine ("Правильне відображення букви і в консолі");
}
}




Після зміни кодування:

using System;
class Example {

static void Main() {
Console.OutputEncoding = System.Text.Encoding.GetEncoding (1251);

Console.WriteLine ("Правильне відображення букви і в консолі");
}
}



Дякую за вашу увагу!!! Висловлюйте свою думку щодо даної статті в коментарях, задавайте запитання, діліться ідеями. Також дивіться уроки в YouTube і одразу ж підписуйтесь на канал. Діліться моїм блогом зі своїми друзями. Підписуйтесь на мій Твіттер, щоб не пропустити нові уроки та статті. А головне всім удачі.

5 коментарів: