在NIO中,数据的读写操作始终是与缓冲区相关联的.读取时信道(SocketChannel)将数据读入缓冲区,写入时首先要将发送的数据按顺序填入缓冲区.
是将数据移进移出通道的唯一方式.可以把通道比如为煤矿(数据区),而把缓冲器比如为运煤车,想要得到煤一般都通过运煤车来获取,而不是直接和煤矿取煤。
缓冲区是定长的,基本上它只是一个列表,它的所有元素都是基本数据类型.
ByteBuffer是最常用的缓冲区,它提供了读写其他数据类型的方法,且信道的读写方法只接收ByteBuffer.因此ByteBuffer的用法是有必要牢固掌握的.
- 创建ByteBuffer
2. flip()
3. channel.read(ByteBuffer)
(1) ByteBuffer.get()
4. channel.write(ByteBuffer)
(2) ByteBuffer.put()
参考:
http://blog.csdn.net/mars5337/article/details/6576417
http://blog.sina.com.cn/s/blog_80cd5ba00101ma86.html
http://blog.csdn.net/baple/article/details/12749005
http://www.tuicool.com/articles/veUvy2
时间: 2024-08-25 23:45:58