MINA ByteBuffer 方法

1.position

例:
position()
第一次使用返回值为当前位置:0


position(8) 返回第8个字节以后的数据(包括第8个)可以和 limit 联合使用
如:
buffer.position(3);
buffer.limit(7);
ByteBuffer slice = buffer.slice();


再次调用 position() 返回:8


2.remaining

例:

ByteBuffer byt = ByteBuffer.allocate(128,false);

第一次调用
byt.remaining(); 返回 128

A、使用:byt.putInt(5);或者byt.getInt()或者byt.get(字节数组)等方法

之后调用 byt.remaining(); 返回 124

B、但使用 byt.putInt(5,4);或者byt.getInt(0) 之后,调用方法
byt.remaining();返回 128


3.prefixedDataAvailable

prefixedDataAvailable(4) int

该方法很好用。判断前四字节的整型值是否大于等于整个缓冲区的数据。可以方便的判断一次
messageReceived 过来的数据是否完整。(前提是自己设计的网络通讯协议前四字节等于发送数据的长度)

prefixedDataAvailable(2) Short int

你可能感兴趣的:(网络协议,Mina)