java新IO---通道(Channel)

一,本章目标

了解通道的作用

使用通道完成读,写的双向操作


二,具体内容

在新IO中,通道是一个可以用来读取和写入数据的一种形式。


通道都是操作缓冲区完成全部功能的。可以使用FileChannel完成文件的双向操作。


写入数据例子:


既然通道是一个双向操作,即可读又可写。


在通道中还有一种方式成为内存映射。


实际上现在已经学习过一下几种方式的读入方式:

①RandomAccessFile:速度较慢

②FileInputStream:速度较慢

③缓冲读取:速度较快

④内存映射:速度最快

内存映射的使用方式:需要把一个输入流绑定在直接映射上。


只读的例子如下:


内容映射在读取的时候是最快的,但是在使用以上操作代码的时候,执行的是写入操作是非常危险的,因为仅仅改变数组中单个元素这个简单的操作,就可能直接修改池畔上的文件,因为修改数据与将数据保存在磁盘上是一样的。



三,总结

掌握通道的作用,一定要明白通道是双向的,可读可写

内存映射速度最快

通道的操作是以缓冲区为主的。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值