Грешка или функция в Java Изход на кирилица към конзолата

Има много функции, които е желателно да знаете, когато програмирате на Java, дори и да сте начинаещ програмист. Под изрязването ще ви кажа как да показвате кирилски символи в конзолата на Windows и ще демонстрирате това ясно. Да започнем просто.

Те в Java 8:

  • булево;
  • byte, char, short, int, long;
  • плувка, двойно.

Charе символен тип данни. Променлива от този тип заема 2 байта памет, тъй като се съхранява в unicode кодиране. Могат да се извършват само операции по присвояване с променливи от този тип, но по различни начини. Най-простият изглежда така: c = 'b'; Един символ може също да бъде представен като неговия код, написан в осмична нотация: c = '\077'; Където 077 е задължително трицифрено число, не по-голямо от 377 (=255 в десетичен знак). Или в шестнадесетичен, както следва: c = '\u12a4'; Освен това има специални знаци като знак за абзац, прекъсване на страница и др. Знакът за абзац се изписва например по следния начин: c = '\n'; Не е необходимо да ги изброявате тук. Ако е необходимо, винаги можете да разгледате ръководството.

Сега внимание. Стандартното кодиране за средата за програмиране на Java е Latin-1. Въпреки това, когато се извеждат към потока System.out, знаците се преобразуват в кодирането по подразбиране на операционната система. Така че за българска локализация стандартното кодиране е Windows-1251, за linux ще бъде UTF-8. Въпреки това, както беше планирано от Microsoft, те решиха да използват кодирането Cp866 за конзолата на Windows.

Съответно заключението е: за правилното показване на кирилски знаци в конзолата, трябва да показвате знаци в кодирането Cp866!

Товаможе да се направи по следния начин:

импортиране на java.io.PrintStream; импортиране на java.io.UnsupportedEncodingException;

публичен клас Здравейте < public static void main(String[] args) хвърля UnsupportedEncodingException < /*Може да възникне UnsupportedEncodingException*/ Низ x = "Здравей свят."; //Това е низът, който ще отпечатаме на екрана PrintStream printStream = new PrintStream(System.out, true, "cp866"); /*Създаване на нов изходен поток, който автоматично ще преобразува символи в Cp866 кодиране*/ printStream.println(x); > > Нека запазим получения код във файла Hello.java. След това създайте файл Hello.bat със следното съдържание: javac Hello.java java -cp . Здравей пауза И го поставете в същата папка като файла Hello.java. Трябва да изглежда по следния начин: След това стартирайте получения файл Hello.bat и готово, имаме файл Hello.class в същата директория и съобщението „Hello world. » в кодиране Cp866. За да разберете кое кодиране се използва в момента в конзолата, трябва да въведете "chcp" там. И за да промените кодирането на конзолата, трябва да въведете "chcp", например "chcp 1251". Ще демонстрирам използването на тази команда: Забележка: ако не намерите командата javac, отидете (за Windows 7) "Моят компютър" - "Свойства" - "Разширени системни настройки" - "Променливи на средата", намерете "Системни променливи" и добавете реда, където е инсталиран JDK, към променливата Path, например "C:\Program Files\Java\jdk1.7.0_25\bin" - по подразбиране.