File

作者: 寂静的春天1988 | 来源:发表于2020-06-02 15:21 被阅读0次

File:文件和目录路径名的抽象表示。 (该文件或目录并不一定真的存在)

1、创建操作
1)创建文件夹

File file=new File("C:\\fileDemo");
System.out.println(file.mkdir());//true
File file=new File("C:\\aaa\\bbb");
System.out.println(file.mkdir());//false

mkdir:创建由此抽象路径名命名的目录,但是上一级必须存在,否则不会创建。如果该文件夹已经存在,则不会创建。

File file=new File("C:\\aaa\\bbb");
System.out.println(file.mkdirs());

mkdirs:创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录。 如果该文件夹已经存在,则不会创建。
2)创建文件

File file=new File("C:\\aaa\\bbb\\a.text");
System.out.println(file.createNewFile());

报错:Exception in thread "main" java.io.IOException: 系统找不到指定的路径。
createNewFile:创建一个文件,但是目录必须存在,否则抛出IOException系统找不到指定的路径。如果该文件已经存在,则不会创建。

2、删除操作

File file1=new File("C:\\aaa\\bbb");
System.out.println(file1.mkdirs());//true
System.out.println(file1.delete());//true
File file1=new File("C:\\aaa\\bbb");
System.out.println(file1.mkdirs());//true
File file2=new File("C:\\aaa");
System.out.println(file2.delete());//false

delete:删除由此抽象路径名表示的文件或目录。 如果此路径名表示目录,则目录必须为空才能删除。

3、重命名

File file1=new File("C:\\aaa\\a.txt");
File file2=new File("C:\\aaa\\b.txt");
file1.createNewFile();
System.out.println(file1.renameTo(file2));
File file1=new File("C:\\aaa\\a.txt");
File file2=new File("C:\\bbb\\d.txt");
File file3=new File("C:\\bbb");
file1.createNewFile();
file3.mkdirs();
System.out.println(file1.renameTo(file2));

renameTo:如果路径名相同那么做了重命名操作,如果路径名不同,那么做了重命名加移动操作。

4、获取功能
获取绝对路径:file.getAbsoluteFile();
获取相对路径:file.getPath();
返回由此抽象路径名表示的文件或目录的名称:file.getName();
获取文件字节长度:file.length();
获取文件最后修改时间long类型的数字:file.lastModified();
返回一个字符串数组,命名由此抽象路径名表示的目录中的文件和目录:file.list();
获取由该抽象路径名表示的目录中的File数组: file.listFiles();

过滤操作:获取某个目录下所有txt文件

        File file=new File("C:\\aaa");
        String[] list=file.list(new FilenameFilter() {
            @Override
            public boolean accept(File dir, String name) {
                return new File(dir,name).isFile() && name.endsWith(".txt");
            }
        });
        System.out.println(Arrays.toString(list));

相关文章

网友评论

      本文标题:File

      本文链接:https://www.haomeiwen.com/subject/qqsuzhtx.html