gpt4 book ai didi

java - ByteBuffer:写入,然后返回到缓冲区的开头,并在之前写入的所有数据之前写入(前置?)

转载 作者:太空宇宙 更新时间:2023-11-04 08:11:45 28 4
gpt4 key购买 nike

我对使用 ByteBuffer 仍然有点犹豫。我想要做的是将数据写入 ByteBuffer,然后转到 ByteBuffer 的开头并在所有数据之前写入一个字节(写入数据包的有效负载,然后在前面添加 header 。)我该怎么做?

图表:

缓冲区开始于:

|  PAYLOAD  |

添加操作代码 header 后的缓冲区(在我想做的事情之后):

|  HEADER  |  PAYLOAD  |

|只是这种数据的分隔符,而不是任何字面意思。

最佳答案

您正在寻找的称为“分散收集 I/O”,它由 ScatteringByteChannel.read(ByteBuffer[])GatheringByteChannel.write(ByteBuffer[]) 支持。注意数组。这些接口(interface)由 FileChannelSocketChannelDatagramSocketChannel 以及 Pipe channel 支持。

关于java - ByteBuffer:写入,然后返回到缓冲区的开头,并在之前写入的所有数据之前写入(前置?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11075865/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com