File类的常用方法介绍

File类的常用方法介绍

构造方法:

File(String pathname) (常用)(一个字符串作为文件目录)
File(String parent, String child) (两个字符串拼接成一个文件目录)
File(File parent, String child) (一个file对象和字符串拼接成一个文件目录)

演示:

public class Demo {
    public static void main(String[] args) {
        //File(String pathname)  (常用)(一个字符串作为文件目录)
        File file1 = new File("C:\\a");

        //File(String parent, String child)  (两个字符串拼接成一个文件目录)
        File file2 = new File("C:\\a","b\\c");

        //File(File parent, String child)  (一个file对象和字符串拼接成一个文件目录)
        File file3 = new File(file1,"b\\c");
    }
}

静态方法:

pathSeparator 表示 路径分隔符 ;
separator 表示 文件分隔符 \ (windows) 或 / (linux)

演示:

public class Demo {
    public static void main(String[] args) {
        //separator     表示 文件分隔符   \(windows) 或 /(linux)
        File file1 = new File("C:" + File.separator + "a" + File.separator + "b");
    }
}

结果:C:\a\b

文件与文件夹创建方法:

boolean createNewFile() 创建一个空文件 如果该文件已经存在返回false 如果不存在创建并返回true。
boolean mkdir() 创建一个空目录(文件夹) 如果该目录已经存在返回false 如果不存在创建并返回true。
boolean mkdirs() 创建多个空目录(文件夹) 成功返回true 失败返回false。

createNewFile演示:

public class Demo {
    public static void main(String[] args)throws IOException {
        File file1 = new File("D:\\b.txt");
        boolean newFile = file1.createNewFile();
        System.out.println(newFile);

		//如果在创建b.txt文件时没有a文件夹会报异常
		/*File file1 = new File("D:\\a\\b.txt");
        boolean newFile = file1.createNewFile();
        System.out.println(newFile);*/
    }
}

注意:在创建文件时,要确保文件所在的文件夹存在,不然会报异常
在这里插入图片描述

mkdir演示:

public class Demo {
    public static void main(String[] args)throws IOException {
		File file1 = new File("D:\\a");
        boolean mkdir = file1.mkdir();
        System.out.println(mkdir);

		//如果创建文件夹时出现多级文件夹都不存在 使用mkdir是创建不成功的,必须使用mkdirs
        /*File file1 = new File("D:\\a\\b\\c");
        boolean mkdir = file1.mkdir();
        System.out.println(mkdir);*/
    }
}

注意:创建文件夹时出现多级文件夹都不存在 使用mkdir是创建不成功的,必须使用mkdirs

mkdirs演示:

public class Demo {
    public static void main(String[] args)throws IOException {
        File file1 = new File("D:\\a\\b\\c");
        boolean mkdirs = file1.mkdirs();
        System.out.println(mkdirs);

        //c.txt也会被创建成一个文件夹,并且是以c.txt命名的文件夹,并不会创建成文件
        /*File file1 = new File("D:\\a\\b\\c.txt");
        boolean mkdirs = file1.mkdirs();
        System.out.println(mkdirs);*/
    }
}

文件的属性获取方法:

long length() 获取文件内容的长度
String getAbsolutePath() 获取文件或文件夹的绝对路径
String getPath 获取当前相对路径
String getName 获取文件或文件夹的名称
String getParentFile 获取指定文件的父目录,如果没有返回null
boolean exists 判断文件或文件夹是否存在
boolean isDirectory 判断是否是文件夹
boolean isFile 判断是否是文件

这些方法比较简单,直接用对象名.方法名然后接收参数就行了,就不在演示了。

文件删除方法:

boolean delete 删除指定文件或文件夹

注意:如果文件夹不为空删除不掉。

文件的遍历查找方法:

String[] list() 把当前目录下的文件或文件夹转换成String数组
File[] listFiles() 把当前目录下的文件或文件夹转换成File数组

演示:

public class Demo {
    public static void main(String[] args) {
        File file8 = new File("G:\\io");

        System.out.println("==============list=============");
        //list获取该文件夹下所有的文件或文件夹,(返回String数组)
        String[] list = file8.list();
        for (String s : list){
            System.out.println(s);
        }

        System.out.println("==============listFiles=============");
        //listFiles获取该文件夹下所有的文件或文件夹,(返回File对象数组)
        File[] files = file8.listFiles();
        for (File f : files){
            System.out.println(f);
        }
    }
}

结果:
==============list=============
1.jpg
a.txt
b.txt
oo
==============listFiles=============
G:\io\1.jpg
G:\io\a.txt
G:\io\b.txt
G:\io\oo
发布了33 篇原创文章 · 获赞 35 · 访问量 1578

猜你喜欢

转载自blog.csdn.net/weixin_45216092/article/details/105123759
今日推荐