java File类判断及获取功能

File类判断和获取的方法主要有以下几种
java File类判断及获取功能_第1张图片
话不多说 我们先来看代码

import java.io.File;

public class text {
    public static void main(String args[]) {
        File file = new File("D:\\学习案例\\java\\mins.java");
    }
}

这里我们先引入File 然后用File创建了一个文件路径对象

然后我们 来看第一个方法 isDirectory
判断抽象路径指向的是不是一个目录

我们在file 下面编写代码如下

System.out.println(file.isDirectory());

运行结果如下
java File类判断及获取功能_第2张图片
false 说明我们传的 File对象指向的不是一个目录 我们的路径是D:\学习案例\java\mins.java 明显.java是个文件的格式

我们把代码改成

public static void main(String args[]) {
    File file = new File("D:\\学习案例\\java\\mins");
    System.out.println(file.isDirectory());
}

再次运行
java File类判断及获取功能_第3张图片
这些就判断成立了 因为D:\学习案例\java\mins 最终指向的还是一个文件目录

然后我们来看 isFile 方法 判断file抽象路径 指向的是否是一个文件
System.out.println(file.isDirectory());直接改成

System.out.println(file.isFile());

运行结果如下
java File类判断及获取功能_第4张图片
因为刚才我们都判断D:\学习案例\java\mins是个目录了 所以 他当然不是文件
我们将他改回 D:\学习案例\java\mins.java

public static void main(String args[]) {
    File file = new File("D:\\学习案例\\java\\mins.java");
    System.out.println(file.isFile());
}

运行结果如下
java File类判断及获取功能_第5张图片
这样就可以了 D:\学习案例\java\mins.java显然就是一个文件

然后我们来看 exists 判断File抽象路径是否存在

直接将 System.out.println(file.isFile()); 改成

System.out.println(file.exists());

运行结果如下
java File类判断及获取功能_第6张图片
返回了true 因为我电脑里确实是有这个文件 这个路径是存在的
那么我现在把他删了
java File类判断及获取功能_第7张图片
再次点击运行
java File类判断及获取功能_第8张图片
因为文件被删了 这个目录已经不存在了 就返回了false 条件假

然后我们来看 getAbsolutePath 返回file对象的绝对路径

直接把System.out.println(file.exists());改成

System.out.println(file.getAbsolutePath());

运行结果如下
java File类判断及获取功能_第9张图片
可能大家觉得没什么变化 是因为我们给File的本身也是绝对路径 之后可能会有相对路径 甚至有点文件对象是其他地方传给你的 你就可以通过这个拿到他的绝对路径

getPath 获取封装路径

将System.out.println(file.getAbsolutePath());改成

System.out.println(file.getPath());

运行结果如下

java File类判断及获取功能_第10张图片
这个方法就是 你封装时 传给他什么样的路径 他就还你什么样的路径

getName 获取文件名称
将System.out.println(file.getPath());改成

System.out.println(file.getName());

运行结果如下
java File类判断及获取功能_第11张图片
他可以拿到对应路径下文件或目录的名称 而且可以是不存在的 他只是拿了名字 不管你是不是真的有这个文件

后面两个方法需要的是一个目录 所以我们改一下File

File file = new File("D:\\学习案例\\java");

把他改为一个目录
这个目录一定要是存在 而且有文件的
然后在下面编写代码

String[] fileList = file.list();
for(String url : fileList) {
    System.out.println(url);
}

运行结果如下
java File类判断及获取功能_第12张图片
大家可能没看到什么意思 那么找到自己电脑的 D:\学习案例\java目录
java File类判断及获取功能_第13张图片
文件正好对上了 File 的 list方法 可以根据目录 返回他下面的目录和文件列表 成一个字符串数组

listFiles方法 会返回目录下 文件和目录的绝对路径
参考代码如下

public static void main(String args[]) {
    File file = new File("D:\\学习案例\\java");
    File[] fileList = file.listFiles();
    for(File f : fileList) {
        System.out.println(f);
    }
}

运行结果如下
java File类判断及获取功能_第14张图片
这里输出了我们D:\学习案例\java目录下所有文件和目录的绝对路径

而且很神奇的是 listFiles是返回了一个file类型的数组 那么每一个下标都是一个File对象 那么就是说 他们单独也都可以调用File类的其他方法

你可能感兴趣的:(java,jvm,servlet)