本文共 623 字,大约阅读时间需要 2 分钟。
新IO和传统的IO有相同的目的,都是用来进行输入/输出,但是新IO使用了不同的方式来处理输入/输出,新IO采用内存映射文件的方式来处理输入/输出,新IO将文件或文件中的一段区域映射到内存中,这样就可以像访问内存一样访问文件.
java NIO相关的内容都在java.nio及其子包下:
java.nio:主要包含各种与Buffer相关的类
Buffer模型:可参考博客
java.nio.channels :主要包含Channel和Selector相关的类.
Channel中的数据无法直接读取,必须依赖于Buffer.
Selector用于支持非阻塞式输入输出.
java.nio.charset :主要包含与字符集有关的类.
提供字符编码解码等相关类容
在JDK1.7中添加了下列两个方面的内容:
1.文件访问
java.nio.file 及其子包:全面的文件IO盒文件系统访问支持;
Path:与平台无关的平台路径
Files:包含大量的文件操作工具,比如复制,追加,遍历文件等
FileVisitor:文件访问器,提供一些方法供文件访问时相应处理
Paths: Path的工厂
java.nio.file.attribute:提供大量的工具类,可以修改,获取文件属性
2.异步Channel 的IO
在java.nio.channels下添加了多个以Asynchronous开头的Channel接口和类,以提供基于异步Channel的IO
转载地址:http://tvvqj.baihongyu.com/