[nio] 1 - ByteBuffer

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[nio] 1 - ByteBuffer相关的知识,希望对你有一定的参考价值。

在NIO中,数据的读写操作始终是与缓冲区相关联的.读取时信道(SocketChannel)将数据读入缓冲区,写入时首先要将发送的数据按顺序填入缓冲区.

是将数据移进移出通道的唯一方式.可以把通道比如为煤矿(数据区),而把缓冲器比如为运煤车,想要得到煤一般都通过运煤车来获取,而不是直接和煤矿取煤。

缓冲区是定长的,基本上它只是一个列表,它的所有元素都是基本数据类型.

ByteBuffer是最常用的缓冲区,它提供了读写其他数据类型的方法,且信道的读写方法只接收ByteBuffer.因此ByteBuffer的用法是有必要牢固掌握的.

  1. 创建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

本文出自 “编程艺术” 博客,请务必保留此出处http://itsart.blog.51cto.com/1005243/1883264

以上是关于[nio] 1 - ByteBuffer的主要内容,如果未能解决你的问题,请参考以下文章

1.NIO概述

(四:NIO系列) Java NIO Selector

NIO浅析

NIO入门:快速了解NIO

[NIO] IO与NIO

NIO 源码分析(03) 从 BIO 到 NIO