![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Swiftcode |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 23.6.2013 Репутация: нет Всего: нет |
Приветствую, коллеги!
Случилось мне столкнуться с конвертацией HTML в RTF содержимое (хранится в БД Oracle как CLOB), всё бы ничего, решил задачу, но обнаружил, что при конвертации HTMLEditorKit => RTFEditorKit Unicode символы (буквы казахского языка) игнорируются RTFEditorKit'ом, в базу ложаться как ? (вопросы). В логах они тоже как вопросы.
Как проверялось? На Windows стоит Oracle 11g база данных, с ней работает Desktop клиент на Delphi, который сохраняет текст в базу как RTF, моя задача повторить это на JAVA. Соответственно сохраненный RTFEditorKit'ом текст Desktop клиент на дельфи тоже "видит" как вопросы. Хотя сам с юникодом отлично ладит. Вывод: Значит проблема не в базе и не в системе. В итоге выяснил, что RTFEditorKit конвертирует текст в такой формат:
А дельфи клиент тот же текст сохраняет вот так:
UPD: Выяснил, что кодировка ломается на этапе htmlEditorKit.read(input, htmlDoc, 0); То есть, виноват htmlEditorKit. html - кодировка цела, а htmlDoc - содержит уже вопросы вместо казахских символов. Пробовал getBytes, в html исходник подсунуть meta charset=UTF-8, но итог нулевой. 1) Не понимаю где нужно указать нужную кодировку, и возможно ли? 2) Можно ли заставить RTFEditorKit конвертировать символы в формат \'e1\'e2\'e3... как во втором примере Это сообщение отредактировал(а) Swiftcode - 29.7.2014, 14:43 |
||||||
|
|||||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |