JAVA高级基础(48)---使用通道完成文件数据传输

本文深入探讨了Java中的通道(Channel)概念,它作为IO源与目标之间的连接,不同于传统的流。主要讲解了如何通过FileChannel、DatagramChannel、SocketChannel和ServerSocketChannel进行数据传输。此外,还介绍了从本地IO和网络IO获取通道的方法,如使用Files.newByteChannel()和通道的open()方法。重点关注了如何使用通道进行高效的文件数据传输。
摘要由CSDN通过智能技术生成

通道(Channel):传输数据

由 java.nio.channels 包定义的。Channel表示IO源与目标打开的链接。Channel类似于传统的“流”。只不过Channel本身不能直接访问数据,Channel只能与 Buffer 进行交互

 IO 改进示意图

 DMA(直接存储器访问)

Java 为 Channel 接口提供的最主要实现类如下:

  • FileChannel:用于读取、写入、映射和操作文件的通道。
  • DatagramChannel:通过 UDP 读写网络中的数据通道。
  • SocketChannel:通过 TCP 读写网络中的数据。
  • ServerSocketChannel:可以监听新进来的 TCP 连接,对每一个新进来的连接都会创建一个 SocketChannel。        

获取通道

本地IO:
        FileIn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值