Как лучше всего преобразовать строку UTF-8 в другую кодировку из StringBuilder?JAVA

Программисты JAVA общаются здесь
Anonymous
Как лучше всего преобразовать строку UTF-8 в другую кодировку из StringBuilder?

Сообщение Anonymous »

У меня есть StringBuilder sb, который содержит подготовленный текст в UTF-8.
Вопрос: какой из следующих подходов лучше при преобразовании в другой кодировка типа ISO8859-1:
Использование простой строки:

Код: Выделить всё

new String(sb.toString().getBytes("ISO8859-1"), "ISO8859-1");
Или с помощью ByteBuffer:

Код: Выделить всё

ByteBuffer inputBuffer = ByteBuffer.wrap(text.getBytes(Charset.forName("UTF-8")));
CharBuffer data = Charset.forName("UTF-8").decode(inputBuffer);
new String(Charset.forName("ISO-8859-1").encode(data).array(), Charset.forName("ISO-8859-1"));
Каковы плюсы и минусы одного подхода по сравнению с другим (кроме читабельности)?

Подробнее здесь: https://stackoverflow.com/questions/782 ... ingbuilder

Вернуться в «JAVA»