各种转换
--------01 string 转换到其他
string --> byte[]
String message="天气冷,吃火锅";
byte[] content = message.getBytes(CharsetUtil.UTF_8);
int length = content.length;
//step2 新建一个 byteByffer 将文字赛道byteBuffer里面
String strInput="strInput ttttt";
ByteBuffer byteBuffer = ByteBuffer.allocate(1024);
byteBuffer.put(strInput.getBytes());
string --> byteBuffer
string --> byte[] --> byteBuffer
String msg = "str";
ByteBuffer buffer = ByteBuffer.wrap(msg.getBytes());
string --> byteBuf
Unpooled.copiedBuffer(" step05 hello, 客户端 ~ 今天任总被判刑了,我略有心酸... ",CharsetUtil.UTF_8)
--------02 byte[] 转换到其他
byte[] --> String
ByteBuffer byteBuffer = ByteBuffer.allocate((int)file.length());
channel.read(byteBuffer);
System.out.println(new String(byteBuffer.array()));
-----
//将buffer转换成字符串
byte[] bytes=
......
String s = new String(bytes, CharsetUtil.UTF_8);
byte[] --> byteBuffer
String msg = "str";
ByteBuffer buffer = ByteBuffer.wrap(msg.getBytes());
--------03 byteBuffer 到其他
byteBuffer --> byte[]
ByteBuffer byteBuffer = ByteBuffer.allocate((int)file.length());
channel.read(byteBuffer);
System.out.println(new String(byteBuffer.array()));
byteBuffer --> String
ByteBuffer byteBuffer = ByteBuffer.allocate((int)file.length());
channel.read(byteBuffer);
System.out.println(new String(byteBuffer.array()));
--------04 byteBuf 到其他
byteBuf --> String
Object msg = “YYY”
//将 msg 转换为 byteBuf //此 ByteBuf 是 netty 提供的
ByteBuf buf=(ByteBuf)msg;
System.out.println(" 客户端发送消息是: " + buf.toString(CharsetUtil.UTF_8));
byteBuf --> byte[]
@Override
protected void channelRead0(ChannelHandlerContext ctx, ByteBuf msg) throws Exception {
byte[] bytes=new byte[msg.readableBytes()];
msg.readBytes(bytes);
}
这篇博客详细介绍了在Java Netty框架下,如何进行String、byte[]、ByteBuffer与ByteBuf之间的各种转换操作。包括String转byte[]、String转ByteBuffer、String转ByteBuf、byte[]转String、byte[]转ByteBuffer、ByteBuffer转byte[]、ByteBuffer转String以及ByteBuf转String和ByteBuf转byte[]等步骤和方法。
5439

被折叠的 条评论
为什么被折叠?



