2011-12-23 2 views
4

У меня есть код символа в таблице кодов Windows-1251. Как я могу получить код этого символа в таблице кодов UTF-8?Коды Windows-1251 to UTF-8

Например я есть символ «А» с кодируются в Windows-1251 равна 192, соответствующий UTF-8 код равен 1040

Как я могу инициализировать символ или символ в Java с кодом 192 из Windows-1251 код Таблица?

char c = (char) 192; // как указать кодировку?

+1

Все символы ASCII, включая 'Ā' одинаковы в Window-1251, ISO-8859-1 и UTF- 8. Его символы> 127, которые различны. –

+0

У вас есть коды, символы, строка? Дополнительная информация была бы полезной. - Если это строка, вы можете просто определить кодировку CP-1251 при чтении ее из потока/файла и кодировки UTF-8 при записи в поток/файл. – Thomas

+1

Моя первоначальная задача - проверить правильность символа (может использоваться в строке). Список допустимых кодов символов, которые есть в таблице кодов Windows-1251. Действительные символы могут быть установлены как диапазон от-до (32-235). Я хочу сравнить данный символ с диапазоном, но данный символ находится в кодировке UTF-8. – pe4enko

ответ

7

Чтобы преобразовать байт [] кодирования в одной кодировки в другую вы можете сделать

public static byte[] convertEncoding(byte[] bytes, String from, String to) { 
    return new String(bytes, from).getBytes(to); 
} 
+0

Но если вы преобразуете выходные данные 'byte []' в строку, вы получите неправильную строку –

Смежные вопросы