Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > кириллица |
Автор: virin 6.6.2005, 10:09 |
Подскажите, плиз, начинающему: Как преобразовать Unicode вида р в нормальные русские буквы? |
Автор: batigoal 6.6.2005, 10:21 |
Где именно? В документе, в программе? |
Автор: virin 6.6.2005, 10:27 |
в JTextPane, с которым ассоциируется HTMLDocument |
Автор: mixture 16.7.2005, 12:56 | ||||
Сам столгнулся с этой ужастью. После длительного рытья в исходниках javax.swing.text.html.* Обнаружил вот такое (HTMLWriter):
В простейшем случае, решение может выглядеть так (мне этого хватило):
Для & нужно заводить отдельный мап чарактеров. |
Автор: batigoal 16.7.2005, 12:58 |
Думается мне, что есть другой способ, кроме изменения исходников ![]() |
Автор: mixture 16.7.2005, 13:20 | ||||||
Никакое это не изменение. делается это так String s = getPlainUnicodePlease(jMyTextPane.getText()); Можно было бы конечно унаследоваться от HTMLWRiter, скопировать часть исходников, где нет оцифрения юникодов и переопределить метод output, однако HTMLEditorKit и не позволяет просто так использовать свой Writer. JTextPane
JTexTComponent
HTMLEditorKit
Нужно HTMLEditorKit тоже наследовать. Хотя, не получится. Методы дедушек не достанешь, область видимости свойств не поменяешь ![]() |
Автор: Гость_Sleepy_PIP 17.7.2005, 20:47 |
вот. и я попал. есть простейшая String, содержащая "ftp%3A%2F%2F194.67.139.192%2FCD+3D+%EC%EE%E4%E5%EB%E8+2000" надо это хоз-во перевести к виду: "ftp://194.67.139.192/CD 3D модели 2000" честно скажу - 40 мин. копался - не понимаю. устал? ну может быть. но я даже не понимаю как получить список допустимых чарсетов в java.nio.charset.Charset! Еще раз - речь идет о преобразовании одной строки - в другую ... элементарном. пробел тут у меня боооольшой. не понимаю ![]() |
Автор: Sleepy_PIP 17.7.2005, 22:02 |
это не гость. это Sleepy_PIP ![]() |
Автор: tux 18.7.2005, 03:44 | ||||
Декодирование URL:
Список доступных кодировок:
|
Автор: Sleepy_PIP 18.7.2005, 11:06 | ||||||
ага. с URL понятно. Спасибо большое! а в общем случае - как конвертировать строки между чарсетами? Спасибо! |
Автор: tux 18.7.2005, 11:21 |
Вообще говоря, конвертирование строк нужно только если в JVM поступает что-то извне (например, из файлов читается или по сети передается), все строки в Java хранятся в Юникоде. Для потоков ввода-вывода есть такая возможность:
|
Автор: 3,14 19.7.2005, 12:09 | ||||
По-моему при преобразовании в Unicode и обратно удобнее пользоваться просто String-ами. Преобразовать в String:
Получить байты в нужной кодировке тоже не проблема:
|
Автор: tux 19.7.2005, 12:22 | ||
Однако, тогда нужно иметь уже готовый массив байтов, что не всегда достижимо. Впрочем, часто действительно удобнее, не зря ведь такую возможность предусматривали. ![]() |
Автор: Dibazzol 16.7.2007, 17:35 | ||
А подскажите пожалуйста! Есть метод, я уже в нем поменять умудрился каждую букву, все равно ничего не выходит:
Им я пытаюсь получить у яндекс.директ ключевые слова для поиска. С английскими словами все отлично получается, несмотря на кривость написания, а вот что делать с русскими, я не могу понять. ответ сервера получается в некоторой странной кодировке, где все, что на англ. читабельно, а на русском - нет. В связи с этим, метод ничего не может найти. Я перепробовал уже все возможные кодировки. Что посоветуете? Добавлено через 2 минуты и 15 секунд Может быть стоит просто запрос key перевести в урл формат? Добавлено через 7 минут и 41 секунду АА!! все получилось, в очередной раз респекты LSD! http://forum.vingrad.ru/topic-112179.html |