Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Проблема с кодировкой |
Автор: Egorik789 2.11.2009, 06:30 | ||
Считываю данные из реестра(тип клавы). Нужна настроить правильную кодировку при считывании. Я не знаю только как.. Помогите пожалуйста.. Английские буквы правильно показывает, русские всякие каракулы...
|
Автор: Egorik789 2.11.2009, 13:44 |
ivanovpv, А можно более подробнее..? |
Автор: ivanovpv 3.11.2009, 10:31 |
Куда уж подробнее то? Оберните сверху ваш InputStream в InputStreamReader, в котором укажите чарсет и все. |
Автор: Egorik789 3.11.2009, 15:07 |
ivanovpv, Я сделал вот так.. InputStream is = process.getInputStream(); InputStreamReader reader = new InputStreamReader(is,"Cp1251"); Но я не могу считать теперь данные.. Или просто не знаю как.. Помоги пожалуйста..? |
Автор: ivanovpv 3.11.2009, 15:25 |
А что же ты теперь читаешь? Надо теперь читать reader ... И еще ты хоть спроси у системы http://java.sun.com/j2se/1.4.2/docs/api/java/nio/charset/Charset.html#isSupported%28java.lang.String%29 твой чарсет? |
Автор: Egorik789 3.11.2009, 15:28 |
ivanovpv, Вот это дальше не работает.. reader.start(); process.waitFor(); reader.join(); String result = reader.getResult() Чарсет понимает.. |
Автор: ivanovpv 3.11.2009, 15:40 |
Приведи весь код |
Автор: Egorik789 3.11.2009, 15:46 |
ivanovpv, код полный сверуху.. Я одну строчку StreamReader reader = new StreamReader(process.getInputStream()); заменил на это InputStream is = process.getInputStream(); InputStreamReader reader = new InputStreamReader(is,"Cp1251"); Помоги.. Я ни как разобраться не могу.. |
Автор: ivanovpv 3.11.2009, 16:15 | ||
Жесть...
|
Автор: Egorik789 4.11.2009, 05:58 |
ivanovpv, Огромное спасибо!))) Я разобрался..!!))) this.isr = new InputStreamReader(is, "cp1251"); sw = new StringWriter(); Там так должно быть..))) |