Jython — сохранение вывода скрипта с корейской строкой в файл

#java #file #utf-8 #jython #jython-2.7

#java #файл #utf-8 #jython #jython-2.7

Вопрос:

Я попытался выполнить простой скрипт на Python с корейской строкой. Когда я попытался записать результат этого выполнения в файл, корейская строка была напечатана неправильно.

 PythonInterpreter interp = new PythonInterpreter() {
    {
        cflags = new CompilerFlags(CompilerFlags.PyCF_SOURCE_IS_UTF8);
    }
};
String outputPath = "C:\views\mithun.txt";
interp.setOut(new PrintWriter(new OutputStreamWriter(new FileOutputStream(outputPath), "UTF-8")));
String execScript = "abc = '헬로우'rn"                   
                    "print "Printing Korean : ", abc";
interp.exec(execScript);
 

Вот что я вижу в файле, открытом в Notepad с кодировкой utf-8:

Скриншот Notepad

Комментарии:

1. Привет, Митхун, добро пожаловать 🙂 Я не совсем знаком с этой темой. Помогите мне: может ли utf-8 кодировать корейские символы

2. Привет @WurmD, большое спасибо! 🙂 Да, он способен кодировать utf-8, если я не добавлю interp.setOut и не позволю выводить на печать на консоли.. Он печатает корейский правильно.