| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > ISO-8859-Х кодировка |
| Автор: Kizja 8.5.2008, 19:11 | ||
Привет, чего-то не могу понять, как получить числовые значения байтов в ISO-8859-5, пробую так:
В итоге в файл сохраняются следующие данные: Абракадабра Байты: -80 -47 -32 -48 -38 -48 -44 -48 -47 -32 -48 Символы: ? ? ? ? ? ? ? ? ? ? ? Первая строчка с текстом показывается как надо, в строке "Байты" выводит неверные числа судя по вот этой таблице: http://www.sbnet.ru/soft/fluids/charsets/iso.htm , где например буква "А" в слове "Абракадабра" соотвествует этому: "0xB0 0x0410 # CYRILLIC CAPITAL LETTER A", т.е. "0xB0" => если я не ошибаюсь равняется 176, а он выводит -80. Вместо символов тоже выводит вопросы, кто-нибудь знает как эти данные получить по человечески ? |
| Автор: LSD 11.5.2008, 17:01 | ||
byte в Java знаковый тип, так что выводить его надо приблизительно так:
Насчет того, что в строке символы выводится абракадабра - ты уверен, что кодикорвка 8859_5 поддерживает те символы, что ты хочешь вывести? |
| Автор: Kizja 12.5.2008, 00:30 | ||||
LSD, возник переделанный вариант, где символы тоже выводит, но всё равно есть проблема:
Например здесь хочу получить букву "Ю", выдаёт в файл результат при encoding = Cyrillic (ISO): string: Ю byte: 46 int: 1070 char: Ю Букву "Ю" он показывает правильно, но вот вместо "int: 1070" надо чтобы показало: "int: 206", поскольку зайдя по той ссылке, которую я указал в прошлом сообщении видно, что: 0xCE 0x042E # CYRILLIC CAPITAL LETTER YU где 0x042E как раз равняется выводимому "1070", а надо чтобы выводил бы 0xCE, т.е. "206", но не понимаю почему он выводит именно номер unicode (т.е. 1070), когда я ему вроде явно во всех местах указал, что это должен быть ISO-8859-5 (т.е. 206) ? Добавлено через 4 минуты и 42 секунды На всякий случай ещё импорты для приведённого выше кода:
|
| Автор: Kizja 13.5.2008, 00:13 |
| LSD, спасибо большое за помощь - теперь ясно, а то как-то с этими байтами, чарами запутался было совсем... |