Откуда java извлекает кодировку по умолчанию? - PullRequest
4 голосов
/ 25 октября 2011

откуда java извлекает кодировку по умолчанию?

Я попробовал следующий код на 2 пластинах: redhat 4 и centos 5

public class EncodingTest {
    public static void main(String args[]) throws Exception{
    System.out.println(System.getProperty("file.encoding"));
    System.out.println(
               new java.io.OutputStreamWriter(
                              new java.io.ByteArrayOutputStream()).getEncoding()
               );
    }
}

У меня есть два разных результата, redhat UTF-8 и для centos ASCII. Это та же самая установка java и версия (1.4). Я запускаю Java без параметра -Dfile.encoding.

Спасибо.

1 Ответ

2 голосов
/ 25 октября 2011

Кодировка платформы по умолчанию берется из ОС и зависит от локали по умолчанию. Если вы получаете разные результаты на разных машинах, у этих машин разные локали по умолчанию. Теперь это зависит от ваших потребностей. Если вы хотите, чтобы ваше приложение работало одинаково на всех проходных кодировках платформы, используйте -Dfile.encoding

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...