|
|
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
Доброго дня господа ! Сделал сервлет - кодировка страницы UTF-8 строку в кодировке win1251 ЯВНО перевожу в UTF-8 Вывожу на страницу - крокозября Поясните как исправить Сервер находиться на Win7 Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 15:20 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_Xстроку в кодировке win1251 ЯВНО перевожу в UTF-8 Не надо этого делать, и все должно получиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 15:43 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_X Код: java 1. Мне пора счетчик завести, наверное. Это уже, вероятно, десятый раз когда я пишу на этом форуме. Этот код целиком и полностью ошибочен. Если вы его пишете, значит у вас что-то где-то в другом месте сломано. Конкретно здесь проблема в том что в переменной win1251 вообще нет ничего относящегося к кодировке cp1251. Если у вас там что-то не то в переменной это свидетельствует о том что .java файл вы сохранили в одной кодировку, а компилятору сказали читать его в другой. И эта ошибка, которую надо исправлять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 15:46 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
Краткая последовательность действий HOME_X Код: java 1. Сообщаем браузеру, что ответ будет в utf-8 HOME_X Код: java 1. Создаем строку во внутренней кодировке Java (не 1251) HOME_X Код: java 1. Преобразовываем строку в последовательность байт характерных для кодировки utf-8. Затем преобразовываем эту последовательность байт предполагая что там кодировка 1251 во внутреннее представление Java. HOME_X Код: java 1. Печатаем исходную строку (с преобразованием в кодировку указанную выше) HOME_X Код: java 1. Печатаем то, что получилось (с преобразованием в кодировку указанную выше) Зачем только это? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 15:48 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
BlazkowiczHOME_X Код: java 1. Мне пора счетчик завести, наверное. Это уже, вероятно, десятый раз когда я пишу на этом форуме. Этот код целиком и полностью ошибочен. Если вы его пишете, значит у вас что-то где-то в другом месте сломано. Конкретно здесь проблема в том что в переменной win1251 вообще нет ничего относящегося к кодировке cp1251. Если у вас там что-то не то в переменной это свидетельствует о том что .java файл вы сохранили в одной кодировку, а компилятору сказали читать его в другой. И эта ошибка, которую надо исправлять. Согласен - приймите мои извинения = "десятый раз" "...java файл вы сохранили в одной кодировку, а компилятору сказали читать его в другой.." Где именно это НУЖНО менять ? Суть процесса чуть другая есть ресурс - который храниться в win1251 - который считывается классом - из этого ресурса формируется данные для HTML под Win веб сервером все в порядке под Linux - крокозябрит Зачем я делал перевод ? чтобы привести кодировкку установленной страницы и выводимой строки Подскажите как правильно реализовать запуск под разными операционками ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 16:28 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_XГде именно это НУЖНО менять ?тарантуле надо сказать об этом -- http://stackoverflow.com/questions/1726174/how-to-compile-a-java-source-file-which-is-encoded-as-utf-8 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 16:33 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_XПодскажите как правильно реализовать запуск под разными операционками при правильной организации кодировок, такой вопрос не возникает, значит что-то не так ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 16:36 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
Сергей Арсеньев Зачем только это? response.setCharacterEncoding("utf-8"); Установка кодировки на странице - согласен String win1251 = "Добрый день"; Иниц - ция строку во внутр. кодировке - согласен (где в Eclipse найти внутренн. кодировку) //String utf8 = new String(win1251.getBytes("UTF-8"),"windows-1251"); согласен не нужно - ошибка String utf8 = new String(win1251.getBytes("UTF-8")); перевели в UTF-8 out.println(win1251); out.println(utf8); Вывод для контроля над процессом Проблема в следующем - мне нужно под WIN и под Linux получить идентичный результат при визуализации страницы На текущий момент на Win и под Linux он разный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 17:26 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_XString utf8 = new String(win1251.getBytes("UTF-8")); перевели в UTF-8 точно такая же ошибка. Просто вместо явного cp1251 вы используете текущую кодировку по умолчанию. HOME_XПроблема в следующем - мне нужно под WIN и под Linux получить идентичный результат при визуализации страницы На текущий момент на Win и под Linux он разный Проблема в том что не понятно связан ли ваш пример с вашей реальной проблемой. Вы действительно пишете русский текст прям в строковых литералах? Вы действительно не знаете в какой кодировке хранятся ваши Java файлы? Вы действительно не знаете какая кодировка используется при компиляции? Вы намеренно игнорируете то что я пишу просто потому что не понимаете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 17:39 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_XСуть процесса чуть другая есть ресурс - который храниться в win1251 - который считывается классом - из этого ресурса формируется данные для HTML под Win веб сервером все в порядке под Linux - крокозябрит вангую - класс читает из ресурса без указания кодировки - тута порылась собака ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 17:58 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
am_sasa - который храниться в win1251 - который считывается классом вангую - класс читает из ресурса без указания кодировки - тута порылась собака[/quot] Блин. Точно. Мои извинения HOME_X. Не заметил слона. Так и где этот самый класс, который считывает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:07 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
Blazkowicz Ваш вопросы - по пунктам - Вы действительно пишете русский текст прям в строковых литералах? Да,пример - <td> Особовий рахунок </td> - Вы действительно не знаете в какой кодировке хранятся ваши Java файлы? Известно - текстовый ресурс в кодировке windows-1251 - Вы действительно не знаете какая кодировка используется при компиляции? System.out.println(Charset.defaultCharset().name()); windows-1251 Верно ли Вас понял ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:12 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
вообще, в IDE тоже выставляется кодировка в свойствах проекта и JSP файлов. Т.е. действующие лица: - файлы - IDE - AppServer - метаТеги для обозревателя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:12 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_X Известно - текстовый ресурс в кодировке windows-1251 IDE какая и что в заголовке страницы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:14 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_X- Вы действительно пишете русский текст прям в строковых литералах? Да,пример - <td> Особовий рахунок </td> Прямо внутри Java класса? Или отдельным файлом? HOME_X- Вы действительно не знаете в какой кодировке хранятся ваши Java файлы? Известно - текстовый ресурс в кодировке windows-1251 "Текстовый ресурс" это что именно? HOME_X System.out.println(Charset.defaultCharset().name()); windows-1251 Верно ли Вас понял ? Отчасти. Как именно собирается проект? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:16 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_X текстовый ресурс в кодировке windows-1251 файл JSP сделай в кодировке UTF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:17 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_X, Один момент господа ... Меня терзает следующее - (поясните мне где ошибаюсь) Вот код Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. И получил крокозябры на месте UTF-8 - почему ведь страница установлена и строка переведена верно (скрин приложу по требованию) Проблема в следующем - мне нужно под WIN и под Linux получить идентичный результат при визуализации страницы На текущий момент на Win и под Linux он разный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:24 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_XИ получил крокозябры на месте UTF-8 - почему ведь страница установлена и строка переведена верно (скрин приложу по требованию) Мы не можем сказать что и как потому что таких входных данных как кодировка файлов и кодировка компилятора или значение переменной в рантейме - у нас их нет. Проблема лежит за пределами приведенного кода? HOME_XПроблема в следующем - мне нужно под WIN и под Linux получить идентичный результат при визуализации страницы На текущий момент на Win и под Linux он разный Проблема в том что ваш пример не отражает реальной ситуации. В примере у вас проблема в компиляции. В реальности у вас проблема в чтении ресурса во время работы на Linux, так как текущая кодировка не совпадает с кодировкой файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:27 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
Petro123HOME_X Известно - текстовый ресурс в кодировке windows-1251 IDE какая и что в заголовке страницы? IDE = Tomcat Заголовок страницы = Более ничего response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:28 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
BlazkowiczHOME_XИ получил крокозябры на месте UTF-8 - почему ведь страница установлена и строка переведена верно (скрин приложу по требованию) Мы не можем сказать что и как потому что таких входных данных как кодировка файлов и кодировка компилятора или значение переменной в рантейме - у нас их нет. Проблема лежит за пределами приведенного кода? HOME_XПроблема в следующем - мне нужно под WIN и под Linux получить идентичный результат при визуализации страницы На текущий момент на Win и под Linux он разный Проблема в том что ваш пример не отражает реальной ситуации. В примере у вас проблема в компиляции. В реальности у вас проблема в чтении ресурса во время работы на Linux, так как текущая кодировка не совпадает с кодировкой файла. Необходимо дать ЖЕСТКУЮ привязку в момент чтения ресурса (тестовый файл) Пробую ... Спасибо за уделенное время и терпение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:33 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_XIDE = Tomcat Это не IDE разработки)). Предложение (либо делать как на sql_ru): - файлы в кодировке UTF - свойства проекта в UTF https://i.stack.imgur.com/ukrYs.png - мета заголовок для браузера: Код: java 1. а потом всё остальное. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 18:33 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
HOME_Xresponse.setCharacterEncoding("utf-8"); Установка кодировки на странице - согласен Насамом деле, я упустил, что здесь указание сервлету, в какой кодировке надо печатаь в его выходной поток. Собственно это половина того, что необходимо HOME_XString win1251 = "Добрый день"; Иниц - ция строку во внутр. кодировке - согласен (где в Eclipse найти внутренн. кодировку) Если мы говорим про исходный текст программы. То на файле правая кнопка и там сфойствах найдете. Ну или можно целиком на папку - тогда eclipse использует наследование от контейнера. Если же читаете из файла или потока, то при чтении и указывать в какой кодировке ресурс. HOME_X//String utf8 = new String(win1251.getBytes("UTF-8"),"windows-1251"); согласен не нужно - ошибка String utf8 = new String(win1251.getBytes("UTF-8")); перевели в UTF-8 Не надо - см первый коментарий все что надо уже сделано. HOME_XПроблема в следующем - мне нужно под WIN и под Linux получить идентичный результат при визуализации страницы На текущий момент на Win и под Linux он разный Так видать сама страница у тебя в разных кодировках показывается. Может для нее не задана кодовая страница вообще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2017, 19:14 |
|
||
|
Сервлет - кодировка страницы
|
|||
|---|---|---|---|
|
#18+
Привет, подниму данную тему. Проблема та же, нужно перекодировать строку из UTF-8 в Win-1251. Указанный выше текст не помогает, получаю исключение. Unhandled exception: java.io.UnsupportedEncodingException вот часть кода: String urlSend = " https://secure.blablabla.ru/rcapi/?action=personal_data&surname=Пушкин"; String newUrlSend = new String( urlSend.getBytes("UTF-8") , "windows-1251"); При этом часть urlSend.getBytes("UTF-8") подчеркивает красным и в подсказке пишет исключение. Делаю в Android Studio. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 14:27 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=63&tid=2122705]: |
0ms |
get settings: |
19ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
74ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 398ms |

| 0 / 0 |
