如何将ByteBuffer转换为整数和字符串?

时间:2011-09-13 00:53:15

标签: java arrays string nio bytebuffer

我使用ByteBuffer的int方法将putInt()转换为字节数组。我该怎么做?那么将这些字节转换为int?

此外,我使用String的getBytes()方法将字符串转换为字节数组。如何将其转换为反过来? bytesArray.getString()不返回可读字符串。我得到像BF@DDAD

这样的东西

1 个答案:

答案 0 :(得分:2)

您可以使用ByteBuffer.getInt方法,指定整数发生的偏移量,将一系列字节转换为整数。或者,如果您碰巧知道字节排序,则可以使用按位运算符从其8位八位字节显式重构32位整数。

要将字节数组转换为String,可以使用String(byte[])构造函数从字节数组中构造新的String。例如:

byte[] bytes = /* ... get array of bytes ... */
String fromBytes = new String(bytes);