Java-IO-File


概要

File是java.io包中的一个很重要的类

File类的对象可以表示文件,还可以表示目录;在程序中,一个file对象可以代表一个文件或目录

File对象可以对文件或目录的属性进行操作, Eg: 文件名,最后的修改日期,文件大小

File对象无法操作文件的具体数据,即不能对文件进行读写操作

构造方法

//在当前目录下创建一个与aaa.txt文件名相关联的文件对象
File f1 = new File("aaa.txt");
//指明详细的路径以及文件名,请注意双斜线或用反斜杠
File f2 = new File("D:\\Java\\Hello.java");
//指明详细的路径以及目录名,请注意双斜线
File f3 = new File("D:\\Java");

File类中常用方法

方 法 原 型说 明
boolean exists()判断文件是否存在,存在返回true,否则返回false
boolean isFile()判断是否为文件,是文件返回true,否则返回false
boolean isDirectory()判断是否为目录,是目录返回true,否则返回false
String getName()获得文件的名称
long length()获得文件的长度(字节数)
boolean createNewFile()throws IOException创建新文件,创建成功返回true,否则返回false,有可能抛出IOException异常,必须捕捉
boolean delete()删除文件,删除成功返回true,否则返回false

常用方法的使用


        File f = new File("D:\\Java\\ff\\src\\collection\\day1\\DebugDemo.java");
        //判断文件是否存在
        System.out.println(f.exists());
        //判断是否为文件
        System.out.println(f.isFile());
        //判断是否为目录
        System.out.println(f.isDirectory());
        //获得文件的名称
        System.out.println(f.getName());
        //获取文件的长度(字节数)
        System.out.println(f.length());
        try {
            System.out.println(f.createNewFile());
        } catch (IOException e) {
            e.printStackTrace();
        }
        //删除文件   轻易不要操作
        System.out.println(f.delete());
  

由于文件被删了,所以前俩个返回false

false
false
false
DebugDemo.java
0
true
true

创建文件/文件夹

创建一个目录 mkdir
创建多个目录 mkdirs

 //创建文件
        File f = new File("D:\\Java\\ff\\src\\io\\day1\\example1.txt");
        try {
            f.createNewFile();
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println(e.getMessage());
        }
        f.delete();

        //创建文件夹  只有一个用mkdir
        File ff = new File("D:\\lbw");
        ff.mkdir();
        //有多层用mkdirs   要想一次删除文件夹 --> 其子目录得为空
        File fff = new File("D:\\lbw\\lbwnb");
        fff.mkdirs();

返回一个目录下的文件

        //返回一个目录下的所有文件
        File f = new File("D:\\1920-1080彼岸图4K\\动漫");
        File[] fs = f.listFiles();
        for (File fss:fs) {
            System.out.println(fss);
        }
       
        //拿到指定后缀名的文件
        File[] fsss = f.listFiles(new FileFilter() {
            @Override
            public boolean accept(File pathname) {
               return pathname.getName().substring(pathname.getName().lastIndexOf(".")+1).equals("jpg");
            }
        });
        System.out.println(fsss);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值