Netty io.netty.buffer.ByteBuf.array () создает исключение - прямой буфер - PullRequest
0 голосов
/ 05 октября 2018

Я хотел напечатать io.netty.buffer.ByteBuf в виде строки.Но io.netty.buffer.ByteBuf.array () выдает исключение следующим образом.

java.lang.UnsupportedOperationException: прямой буфер в io.netty.buffer.PooledUnsafeDirectByteBuf.array (PooledUnsafeDirectByte333):*

Может кто-нибудь помочь мне получить байт [] из байта io.netty.buffer.ByteBuf. * ​​1005 *

Спасибо.

Ответы [ 2 ]

0 голосов
/ 05 октября 2018

Чтобы напечатать содержимое ByteBuf в виде строки, вы можете использовать buf.toString (java.nio.charset.Charset) .

0 голосов
/ 05 октября 2018

ОК, я нашел способ напечатать значения.Если кому-то интересно,

byte[] bytes = new byte[buf.readableBytes()];
buf.duplicate().readBytes(bytes);
System.out.println(new String(bytes));
...