- 浏览: 141418 次
- 性别:
- 来自: 深圳
最新评论
-
freesea:
不错,还没注意java 7已经增加了这么多类了
[NIO.2] 第十篇 NIO.2 中的文件属性 -
SpringJava:
有个问题,想请教一下楼主:在代码中经常看到try catch语 ...
[NIO.2] 第二十九篇 删除、复制、移动目录和文件 -
xiaohu7924:
高
什么是 Java ? -
jiiming:
这种方法可以借鉴
[Java EE 7] Servlet 异步支持 -
cucaracha:
jahu 写道有中文文档没有啊。请留意我的博客:http:// ...
Java EE 7 技术一览
文章列表
为了不同的目的,你可以使用不同的方式来比较两个 Path 对象是否相等。
首先,你可以调用 Path.equals() 方法来进行判断,这个方法遵守 Object.equals() 方法规范。这个方法不会访问实际的文件系统,因此所比较的两个路径可以不用 ...
当你需要通过从一个文件位置到另一个文件位置构建 Path 对象的时候,你可以调用 relativize() 方法,这个方法将通过这两个位置之间的关系来构建 Path 对象。调用这个方法的 Path 对象称为原始路径,传入这个方法的 Path 对象称为传入路径。最后得到的 Path 对象是相对于原始路径的相对路径。为了更好地理解,下面用几个简单的例子来说明,假设有下面两个路径:
Path path01 = Paths.get("BNP.txt");
Path path02 = Paths.get("AEGON.txt");
在这个例子中,假设 B ...
在 Java 8 之前的版本中,Annotation 只能注释在声明之上。例如类声明,成员变量声明,方法声明等。在 Java 8 之后,Annotation 可以用于类型。这意味着,在代码中的任何地方,只要使用类型就可以使用 Annotation 进行注释。例如,实 ...
在有的情况下,你可能想要在同一个元素上面使用相同的 Annotation 注释多次。这在 Java 8 版本之前是做不到的。从 Java 8 开始提供了可重复注释(repeating annotations)能够让你达到这个目的。
什么时候需要用到可重复注释呢?假设 ...
合并两个 Path 对象可以方便你先定义一个根路径,然后再在后面添加其它的路径。当你需要使用公共路径的时候,这个功能相当有用。NIO.2 提供了 resolve() 方法来支持这个功能。下面看看例子:
//define the fixed path
Path base = Paths.get("C:/rafaelnadal/tournaments/2009");
//resolve BNP.txt file
Path path_1 = base.resolve("BNP.txt");
//output: C:\rafaelnadal ...
本文中,你将可以看到如何将 Path 对象转换为其它对象。本文所有例子都是基于下面的 Path 对象:
Path path = Paths.get("/rafaelnadal/tournaments/2009", "BNP.txt");
将 Path 转换为 String
可以直接使用 Path.toString() 方法进行转换:
//output: \rafaelnadal\tournaments\2009\BNP.txt
String path_to_string = path.toString();
System.out.prin ...
在定义了 Path 对象后,你就可以调用它上面的一系列方法获取关于文件路径的有用信息。这些方法都基于一个前提条件,就是 NIO.2 将路径字符串分隔为一个个的元素(每个元素表示一个目录或文件的子路径),并且将元素由高到低分配索引 0 到 n-1(n 指元素的个数)。一般情况下,根下的第一个目录将会分配索引 0,随后索引递增。本文的例子都是基于 C:\rafaelnadal\tournaments\2009\BNP.txt 的 Path 对象:
Path path = Paths.get("C:", "rafaelnadal/tournaments/2009&quo ...
一旦确认了文件系统上的一个文件或目录,那么就可以定义一个 Path 类来指向它。定义 Path 类可以使用绝对路径、相对路径、路径中带有一个点号“.”(表示当前目录)、路径中带有两个点“..”(表示上一层目录)等。定义 Path 类最简单的方法是调用辅助类 Paths 的 get() 方法。下面将介绍使用不同的方式来得到 C:\rafaelnadal\tournaments\2009\BNP.txt 文件的 Path 对象。
定义绝对路径
绝对路径(有时也成为全路径)是指包含了根目录以及所有子目录以及文件名的文件路径。在 NIO.2 中定义绝对路径只需要一行代码,下面的例子定义了 C:\ra ...
想要初步了解 NIO.2 API,也就是通常所说的“JSR203: More New I/O APIs for the Java Platform”,最好的切入点就是新的抽象类 java.nio.file.Path 类。这个类是 NIO.2 的里程碑,所有应用程序中的 I/O 操作都和这个类密不可分。这个类几乎可以说是 NIO.2 中最常用的类。
Path 类简介
文件路径存在于文件系统中。文件系统可以通过 java.nio.file.FileSystems 这个 final 类来进行访问,从这个类中可以获取 java.nio.file.FileSystem 类的对象。FileSystems ...
在文件系统中,将会以某种方式在一个或多个硬盘驱动器上存放文件,以便查找。大多数文件系统都是以树形结构来存储文件。树的最顶层节点叫做根节点。根节点下可以包含文件和子目录,子目录下又可以包含文件和子目录,以此循环下去。
什么是文件路径?
下图展示了一个简单的包含根节点的目录树。Windows 系统支持多个根节点,每个根节点表示一个磁盘分区,例如 C:\ 或 D:\。而 *nix 系统只支持一个根节点,根节点由正斜线表示:/。
在文件系统中,每个文件都由唯一的文件路径来标识,并且都开始于根目录,在 *nix 系统中文件路径是:
/home/sally/statusReport
在 Win ...
Java 8 中的 Lambda 表达式,允许将函数作为形参传递给另外的函数。为了更好地理解,我们用实例的方式来演示如何使用 Lambda 表达式。
1、Lambda 表达式 Hello World
这是一个最简单的 Lambda 表达式的例子。首先在 main 方法的上面声明了一个接口 HelloWorld,在 main 方法中实现了这个接口,随后调用了接口的唯一方法。
public class LambdaHelloWorld {
interface HelloWorld {
String hello(String name);
}
public st ...
Java 8 开始支持 Lambda 表达式。这是属于 JSR 335 规范的一部分。Lambda 表达式的非官方名称是“闭包”。我们看看在 Java 8 中怎样实现 Lambda 表达式。
Lambda 表达式和方法非常类似,有形参,有代码,有返回值。它们也可以被称为匿 ...