从Java1.0到1.3,我们在开发需要I/O支持的应用时,要面临以下问题: 没有数据缓冲区或通道的概念,开发人员要编程处理很多底层细节 I/O操作会被阻塞,扩展能力有限 所支持的字符集编码有限,需要进行很多手工编码工作来支持特定类型的硬件. 不支持正则表达式,数据处理困难. 为了解决这些问题,在Java1.4引入了NIO.其中有两次主要改进: 在Java1.4中引入非阻塞I/O 在Java7中对非阻塞I/O进行修改 自此Java为I/O操作抽象出了缓冲区和通道区:字符集的编码和解码能力:提供了