File类

概述

文件和目录路径名的抽象表示形式。 File类可以用来表示文件,也可以用来表示目录。

构造方法

public File(String pathname)
通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
public File(File parent,String child)
根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
public File(String parent,String child)
根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。

import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException {
        File file1 = new File("C:\\Users\\Desktop\\newFile");
        
        File file2 = new File("C:\\Users\\Desktop\\", "newFile");

        File file = new File("C:\\Users\\Desktop\\");
        File file3 = new File(file, "newFile");
    }
}
//
方法

public boolean createNewFile() throws IOException
当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。
public boolean mkdir()
创建此抽象路径名指定的目录。
public boolean mkdirs()
创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。

import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException {
        File file1 = new File("C:\\Users\\Desktop\\newFile.txt");
        //如果文件存在返回false,如果文件不存在返回true,表示创建成功
        //会在桌面创建一个名为newFile的.txt文件
        file1.createNewFile();
    }
}

import java.io.File;

public class FileDemo {
    public static void main(String[] args){
      	File file2 = new File("C:\\Users\\彭洋\\Desktop\\aFile");
      	//如果目录存在返回false,如果目录不存在返回true,表示创建成功
      	//会在桌面创建一个aFile的目录
        file2.mkdir();
    }
}
import java.io.File;

public class FileDemo {
    public static void main(String[] args){
        File file3 = new File("C:\\Users\\彭洋\\Desktop\\aFile\\bFile\\cFile");
        //如果目录存在返回false,如果目录不存在返回true,表示创建成功
      	//会在桌面创建一个aFile的目录,目录下有bFile目录,bFile目录下有cFile
      	//此操作失败时也可能已经成功地创建了一部分必需的父目录。
        file3.mkdirs();
    }
}

public boolean delete()
删除此抽象路径名表示的文件或目录

import java.io.File;

public class FileDemo {
    public static void main(String[] args) {
        File file2 = new File("C:\\Users\\Desktop\\aaaFile");
        //aaaFile是已存在的目录,delete可将其删除
        //注意:如果路径名表示一个目录,则该目录必须为空才能删除。
        //通过Java删除的目录不会进入回收站
        file2.delete();
    }
}

public boolean renameTo(File dest)
重新命名此抽象路径名表示的文件。

import java.io.File;

public class FileDemo4 {
    public static void main(String[] args) {
        File file = new File("C:\\Users\\Desktop\\aaaFile");
        File file1 = new File("C:\\Users\\Desktop\\bbbFile");
        //桌面上有文件aaaFile,renameTo可以使aaaFile重命名为bbbFile
        file.renameTo(file1);
    }
}

如果file1的路径与file的路径不同,可将该文件剪切到其他位置。

public class FileDemo {
    public static void main(String[] args) {
        File file = new File("C:\\Users\\Desktop\\aaaFile");
        File file1 = new File("C:\\Users\\Desktop\\aFile\\bFile\\aaaFile");
        //aaaFile文件会被移动到aFile文件下的bFile文件夹下。
        //所以renameTo方法可以完成文件及目录的剪切。
        file.renameTo(file1);
    }
}

public boolean isDirectory()
测试此抽象路径名表示的文件是否是一个目录。
public boolean isFile()
测试此抽象路径名表示的文件是否是一个标准文件。
public boolean exists()
测试此抽象路径名表示的文件或目录是否存在。
public boolean canRead()
测试应用程序是否可以读取此抽象路径名表示的文件。
public boolean canWrite()
测试应用程序是否可以修改此抽象路径名表示的文件。
public boolean isHidden()
测试此抽象路径名指定的文件是否是一个隐藏文件。
public boolean isAbsolute()
测试此抽象路径名是否为绝对路径名。

public String getAbsolutePath()
返回此抽象路径名的绝对路径名字符串。
public String getPath()
将此抽象路径名转换为一个路径名字符串。
public String getParent()
返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。
public File getParentFile()
返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null。
public long getTotalSpace()
返回此抽象路径名指定的分区大小,即总容量。
public long getFreeSpace()
返回此抽象路径名指定的分区中未分配的字节数,即剩余容量
public String getName()
返回由此抽象路径名表示的文件或目录的名称。
public long lastModified()
返回此抽象路径名表示的文件最后一次被修改的时间。
public String[] list()
返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。
public File[] listFiles()
返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。

文件名称过滤器

public String[] list(FilenameFilter filter)
返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录。
public File[] listFiles(FilenameFilter filter)
返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。

import java.io.File;

import java.io.FilenameFilter;

public class FileDemo {
    public static void main(String[] args) {
        File file = new File("C:\\Users\\Desktop\\new");

        File[] files = file.listFiles(new FilenameFilter() {
            @Override
            public boolean accept(File dir,String name) {
                File file1 = new File(dir, name);
                if (file1.isFile()&&file1.getName().endsWith(".jpg"))
                    return true;
                else
                    return false;
            }
        });
        for (File file1:files){
            System.out.println(file1.getName());
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值