File文件类

File文件类

File:文件和目录路径名的抽象表示形式(表示一个文件或者路径)

File类的构造方法

  1. File(String pathname) 根据一个路径得到File对象

    Java中路径的两种写法:

    • 把单斜杠改成双斜杠C:\\Users\\Jascen\\Desktop
    • 把斜杠改为反斜杠

C:/Users/Jascen/Desktop

  1. File(String parent,String child) 根据一个目录和一个子文件/目录得到File对象
  2. File(File parent,String child)根据一个File对象和一个子文件/目录得到File对象

File类的创建功能

  1. boolean createNewFile() 创建文件
  2. boolean mkdir() 创建文件夹
  3. boolean mkdirs() 创建多层文件夹

PS:若目录忘记添加盘符名,则默认为当前项目文件夹

File类的重命名

boolean renameTo()把文件重命名为指定的文件路径.

//把文件a.txt重命名为b.txt
File file=new File("C:\\Users\\Jascen\\Desktop\\a.txt");
        File file2=new File("C:\\Users\\Jascen\\Desktop\\b.txt");
        file.renameTo(file2);

PS:若路径名相同,就是改名。若路径名不同,就是改名并且剪切到该路径。

File类的删除功能

boolean delete()删除指定路径文件/文件夹

PS:①在Java程序中删除文件/文件夹,不会存在在回收站中 ②不能删除非空文件夹

File类的判断功能

  1. boolean isDirectory() 判断是否是目录
  2. boolean isFile() 判断是否是文件
  3. boolean exists() 判断是否存在
  4. boolean canRead() 判断是否可读
  5. boolean canWrite() 判断是否可写
  6. boolean isHidden() 判断是否隐藏

File类的获取功能

  1. String getAbsolutePath() 获取绝对路径
  2. String getPath() 获取路径
  3. String getName() 获取名称
  4. long length() 获取长度。字节数
  5. long lastModified() 获取最后一次的修改时间,毫秒值
  6. String[] list() 获取指定目录下的所有文件或者文件夹的名称数组
  7. File[] listFiles() 获取指定目录下的所有文件或者文件夹的File数组

文件名称过滤器

File类提供了两个文件过滤器方法

public String[] list(FilenameFilter filter)

public File[] listFiles(FileFilter filter)

这两个方法在返回数组前就可以把符合条件的文件过滤出来

例:判断指定目录下是否有后缀名为.jpg的文件,如果有,就输出该文件名称

public class FileDemo02 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
    
        File file = new File("C:/Users/Jascen/Desktop/A");
        String[] subFileNames = file.list(new FilenameFilter() {

            @Override
            public boolean accept(File dir, String name) {
                // TODO Auto-generated method stub
                return name.endsWith(".jpg");//返回以jpg结尾的文件名
            }
        });
        //通过迭代器输出
        for (String str : subFileNames) {
            System.out.println(str);
        }

    }

}

转载于:https://www.cnblogs.com/jascen/p/11172666.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值