Java NIO概述
NIO.2中Path、paths、Files类的使用
1.Java NIO (New IO,Non-Blocking IO)使用Java 1,4版本开始引入的一套新的IO API,可以替代标准的JAVA IO API。NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的(IO是面向流的)、基于通道的IO操作.NIO将以更加高效的方式进行文件的读写操作。
2.Java API中提供了两套NIO,一套是针对标准的输入输出NIO,另一套就是网络编程NIO.
1.|-----java.nio.channles.Channel
|-----FileChannel:处理本地文件
|-----SocketChannel:TCP网络变成的客户端的Channel
|-----ServerSocketChannel:TCP网络编程的服务器端的Channel
|----DatagramChannel:UDP网络编程中发送端和接收端的Channel
NIO.2
1.随着JDK7的发布,Java对NIO进行了极大的扩展,增强了对文件处理和文件系统特性的支持,以至于我们称他们为NIO.2。因为NIO提供的一些功能,NIO已经成为文件处理中越来越重要的部分。
Path、Paths和Files核心API
1.早期的Java只提供了一个File类来访问文件系统,但File类的功能比较有限,所提供的方法性能也不高。而且,大多数方法在出错时仅返回失败,并不会提供异常信息。
2.NIO.2为了弥补这种不足,引入了Path接口,代表一个平台无关的平台路径,描述了目录结构中文件的位置。Path可以看成File类的升级版本,实际引用的资源也可以不存在
3.在以前IO操作都是这样写的:
import java.io.File;
File file=new File(“index.html”);
4.但在Java7中 我们可以这样写: