Запись иностранных символов в файл .json, eclipse vs jar - PullRequest
0 голосов
/ 06 ноября 2018

Использование eclipse IDE для тестирования записи данных в файлы .json и .txt с несколькими иностранными (китайскими, хинди) символами с использованием Java. Я мог бы успешно записать в .txt, где как .json отображает символы ASCII. Фрагмент кода:

try(BufferedWriter br = new BufferedWriter(new FileWriter(new File("test.json")))) {
            JSONObject obj = new JSONObject();
            obj.put("key", "Hello, ओ ो ु ऋ 样品");
            String str = obj.toJSONString();
            System.out.println(str);
            br.write(str);
            br.close();
} catch (Exception e) {
        e.printStackTrace();
} 

Вывод .txt: {"key":"Hello, ओ ो ु ऋ 样品"}

Выход .json: {"key":"Hello, ओ ो à¥� ऋ æ ·å“�"}

Попытался использовать DataOutputStream для записи данных. Но результат тот же.

При декодировании он работал для декодирования обратно как тот же посторонний символ и выглядит хорошо. При создании jar-файла и запуске файла, аналогичного .jar, результаты не будут такими же. Письмо и Чтение оба были показаны в ascii. Да, я понимаю, что в eclipse файл сохраняется как utf-8, что помогло скомпилировать. Кстати, я использую maven, чтобы построить банку.

Пожалуйста, помогите мне с решением проблемы. Спасибо.

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