Java NIO 入门:Channel/Buffer 与 Files 工具类

一、NIO 是什么

NIO(New IO)面向通道 Channel 和缓冲区 Buffer,支持非阻塞与选择器 Selector,适合高并发网络编程。日常文件复制也可直接用 Files 工具类。

二、Files 工具类(最常用)

Path p = Paths.get("a.txt");
byte[] data = Files.readAllBytes(p);          // 读全部
Files.write(p, "hi".getBytes());              // 写
Files.copy(src, dst, StandardCopyOption.REPLACE_EXISTING);
List<String> lines = Files.readAllLines(p);   // 按行读

三、对比

维度 IO NIO
模型 流式、阻塞 缓冲、可选非阻塞
适用 简单文件读写 高并发网络/大文件
日常 够用 用 Files 即可

普通业务用 Files/缓冲流足够,NIO 的非阻塞多用于框架底层(如 Netty)。