1
У меня есть ByteBuffer, содержащий байты, которые были получены String.getBytes(charsetName)
, где «содержащий» означает, что строка содержит всю последовательность байтов между байтами position()
и .Преобразование части ByteBuffer в строку
Каков наилучший способ вернуть строку? (Предполагая, что я знаю кодирование кодового) Есть ли что-нибудь лучше, чем следующий (что кажется немного неуклюжим)
byte[] ba = new byte[bbuf.remaining()];
bbuf.get(ba);
try {
String s = new String(ba, charsetName);
}
catch (UnsupportedEncodingException e) {
/* take appropriate action */
}
Whee! Отлично - это «пахло», как будто должно быть что-то сделать –