Как преобразовать строку TIS-620 в строку UTF-8 в Java?

Как преобразовать строку TIS-620 (расширенная кодовая страница тайских символов ASCII) в строку UTF-8 в Java?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
8 450
2

Ответы 2

import java.nio.ByteBuffer
import java.nio.CharBuffer

....

public static ByteBuffer toByteBuffer(String content, String encode) {  
      Charset charset = Charset.forName(encode);  
      ByteBuffer bb = charset.encode(content);  
       return bb;  
   }  

Передайте в качестве аргумента кодирования "UTF-8"

все еще не получается совсем правильно !!!

user21508 30.10.2008 12:36
private byte[] convertTis620ToUTF8(byte[] encoded)
{
    try
    {
        String theString = new String(encoded, "TIS620");
        return theString.getBytes("UTF-8");
    } 
    catch(UnsupportedEncodingException uee)
    {
        /* Didn't work out */
    }
}

...

byte[] utf8 = convertTis620ToUTF8(tis620);

Кроме того, вам может потребоваться поместить charsets.jar в путь к классам для поддержки кодировки TIS620.

Другие вопросы по теме