bytebuffer 转字符串
时间: 2023-06-30 14:18:33 浏览: 102
将 ByteBuffer 转换为字符串,可以使用 ByteBuffer 的 `Charset` 对象进行编码。以下是一个示例代码:
```java
import java.nio.ByteBuffer;
import java.nio.charset.Charset;
public class ByteBufferToStringExample {
public static void main(String[] args) {
Charset charset = Charset.forName("UTF-8");
ByteBuffer byteBuffer = ByteBuffer.wrap("Hello, world!".getBytes(charset));
String str = charset.decode(byteBuffer).toString();
System.out.println(str);
}
}
```
在上面的代码中,我们首先使用 `Charset.forName()` 方法获取一个指定字符集的 `Charset` 对象,然后使用 `ByteBuffer.wrap()` 方法将字符串包装成 ByteBuffer 对象。接下来,我们使用 `Charset.decode()` 方法将 ByteBuffer 转换为字符串。最后,我们打印出字符串。
注意:在使用 `Charset.decode()` 方法之前,需要将 ByteBuffer 的 position 设置为 0,以便从 ByteBuffer 的开头开始解码。
阅读全文