Отображение китайских символов, как из файла скорости [дубликат]

Поддержка TLS прекращена в более старых версиях git.

Обновление git на вашем компьютере решает эту проблему.

Загрузите последнюю версию git и установите для ваш компьютер отсюда: https://git-scm.com/downloads .

13
задан hippietrail 9 September 2014 в 02:28
поделиться

4 ответа

Java Strings поддерживает Unicode, поэтому китайцы и японцы не проблема. Другие инструменты (например, текстовые редакторы) и оболочка вашей ОС, вероятно, должны быть рассказаны об этом.

При чтении или печати данных Unicode вы должны убедиться, что консоль или поток также поддерживает Unicode ( в противном случае он, скорее всего, будет заменен вопросительными знаками).

Writer unicodeFileWriter = new OutputStreamWriter(
    new FileOutputStream("a.txt"), "UTF-8");
unicodeFileWriter.write("漢字");

Вы можете вставлять литералы в Unicode непосредственно в файлы исходного кода Java, но вам нужно сообщить компилятору, что файл находится в UTF-8 (javac -encoding UTF-8)

String x = "漢字";

Если вы хотите разобраться, вы даже можете использовать китайские символы в именах методов, переменных или классов. Но это противоречит соглашениям об именах, и я бы сильно отговорил его хотя бы для имен классов (потому что их нужно сопоставить именам файлов, а Unicode может вызвать проблемы):

結果 漢字 = new 物().処理();
21
ответ дан Thilo 24 August 2018 в 23:19
поделиться

Немного устарел, но это сделало меня вау!

http://xahlee.org/java-a-day/unicode_in_java.html

Статья посвящена переменному именованию bu, из которого вы можете сказать, что достаточно написать свою китайскую / японскую строку прямо в вашем источнике.

3
ответ дан Federico klez Culloca 24 August 2018 в 23:19
поделиться

Просто используйте его, строки Java полностью юникод, поэтому нечего просто сказать

System.out.println("世界您好!");
3
ответ дан Illarion Kovalchuk 24 August 2018 в 23:19
поделиться

Еще одна вещь, которую следует помнить, должна быть BufferedReader, и я имею в виду:

BufferedReader br = new BufferedReader (new InputStreamReader (new FileInputStream (f), "UTF-8"));

это должно быть сделано, потому что, когда вы читаете файл, readLine () можно вызвать:

while (br.readLine() != null)
{
  System.out.println (br.readLine());
}

Этот метод является единственным, который я нашел, который может нормально функционировать, потому что обычный Reader не содержит нестатический метод readLine () void (этот метод ничего не принимает).

1
ответ дан RANDINT 24 August 2018 в 23:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: