DBMNG数据库管理与应用

书籍是全世界的营养品。生活里没有书籍,就好像没有阳光;智慧里没有书籍,就好像鸟儿没有翅膀。
当前位置:首页 > MySQL > 常见问题

使用NIO系统

20.4 使用NIO系统

下面将演示如何应用NIO系统完成各种任务。在开始之前有必要强调一下,随着JDK 7的发布,Java对NIO系统进行了极大扩展。因此,NIO系统的应用也被极大扩展了。前面提到过,这个增强版本有时被称为NIO.2。因为NIO.2添加的特性是如此丰富,以至于它们改变了许多基于NIO的代码的编写方式,并且增加了使用NIO可以完成的任务类型。缘于重要性,本章剩余的大部分内容和例子都将使用NIO.2的新特性,因此需要JDK 7或更新版本。但是,在本章末尾简要介绍了JDK 7之前的代码。这对于使用JDK 7之前的环境进行工作以及维护旧代码是有帮助的。

请记住:

本章中的大部分例子都需要JDK 7或更新版本。

在过去,NIO的主要目的是进行基于通道的I/O,这到目前仍然是一个非常重要的应用。然而,可以为基于流的I/O以及执行文件系统操作使用NIO。因此,对NIO使用的讨论分为以下3个部分:

为基于通道的I/O使用NIO。

为基于流的I/O使用NIO。

为路径和文件系统使用NIO。

因为最常用的I/O设备是磁盘文件,所以本章剩余部分在示例中使用磁盘文件。因为所有文件通道操作都是基于字节的,所以我们将使用的缓存类型是ByteBuffer。

在为了通过NIO系统进行访问而打开文件之前,必须获取描述文件的Path对象。完成该工作的一种方式是调用Paths.get()工厂方法,在前面介绍过该方法。在示例中使用的get()方法如下所示:

  1. static Path get(String pathname, String ... parts) 
回顾一下指定路径的两种方式。可以分块传递,第1部分使用pathname传递,后续部分通过parts可变参数指定。另外一种方式,可以使用pathname指定整个路径,而不使用parts,示例程序将使用这种方式。
本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号