【发布时间】:2021-03-24 00:44:21
【问题描述】:
我使用 API,它为我提供了 WebSicketFrame#content 的字节 []。 如果我使用 WebSocketFrame#content#toString(Charset) 没有问题。 我使用的 API 虽然返回 WebSocketFrame#content#array,它返回字节数组。
我尝试使用 new String(byte[]),它也尝试读取不可读的字符。 我也绑了这个:
ByteBuf byteBuf = Unpooled.wrappedBuffer(bytelist);
String message = byteBuf.toString(Charset.forName(StandardCharsets.UTF_8.toString()));
这也会读取所有不可读和可写的字符。
还有: ByteBuf#toString 在原始 WebSocketFrame 的 ByteBuf 上使用的上限为 20 Unpooled#wrappedBuffer(byte[]) 生成的 ByteBuf 上使用的 ByteBuf#toString 表示其上限为 16777216
我希望我试图描述的内容是可以理解的
【问题讨论】: