在 Netty 4.0 中创建一个 ByteBuf

Posted

技术标签:

【中文标题】在 Netty 4.0 中创建一个 ByteBuf【英文标题】:Create a ByteBuf in Netty 4.0 【发布时间】:2013-02-26 11:33:20 【问题描述】:

两个简单的问题,我无法通过阅读文档来解决:

    我有一个byte[] 如何将其转换为ByteBuf? 我有一个蔚来ByteBuffer 如何将其转换为ByteBuf

【问题讨论】:

【参考方案1】:

documentation 对我来说似乎很清楚:

创建缓冲区

建议使用Unpooled 中的辅助方法创建新缓冲区,而不是调用单个实现的构造函数。

然后在Unpooled 中,您可以选择包装或复制。例如:

Unpooled.copiedBuffer(ByteBuffer) Unpooled.copiedBuffer(byte[]) Unpooled.wrappedBuffer(ByteBuffer) Unpooled.wrappedBuffer(byte[])

根据您是否希望将返回的ByteBuf 中所做的更改传递到原始字节数组/缓冲区,选择合适的方法。

【讨论】:

示例:Unpooled.wrappedBuffer(new byte[] 0x0D, 0X0A )

以上是关于在 Netty 4.0 中创建一个 ByteBuf的主要内容,如果未能解决你的问题,请参考以下文章

Netty系列之:netty中的ByteBuf详解

Netty之ByteBuf原理解析及应用

netty系列之:不用怀疑,netty中的ByteBuf就是比JAVA中的好用

Netty入门——ByteBuf

8. Netty源码分析之ByteBuf

Netty Bytebuf解析