我有一个 ByteBuffer 包含由 派生的字节String.getBytes(charsetName)
,其中“包含”意味着字符串包含 ByteBufferposition()
和之间的整个字节序列limit()
。
什么是我找回字符串的最佳方法?(假设我知道编码字符集)有什么比以下更好的(这看起来有点笨拙)
byte[] ba = new byte[bbuf.remaining()];
bbuf.get(ba);
try {
String s = new String(ba, charsetName);
}
catch (UnsupportedEncodingException e) {
/* take appropriate action */
}