JavaFile类用法详解

本文介绍了Java中的File类,用于处理文件和目录。通过File类的构造方法,可以创建File对象来表示文件路径。文章详细阐述了File类的常用方法,如创建新文件、创建目录、删除文件/目录、判断文件/目录存在性以及获取文件属性等。此外,还涉及到系统路径分隔符、文件权限检查和磁盘空间信息的获取。
摘要由CSDN通过智能技术生成

File类

1 概述

​ java.io包中提供了一个File类,该类用于表示系统中文件或者目录,使用File类可以对文件或者目录结构进行操作,即使用java.io.File类提供的构造方法和普通方法可以对文件(标准文件,目录)进行:创建,删除,扫描,等操作

2. 构造方法

  • File(String path)
  • File(String parent,String child)
  • File(File parent,String child)
//使用提供的文件(或目录)路径
File f = new File("D:/素材/视频/短视频/大事发生.mp4");
System.out.println(f.toString());
f = new File("D:/素材/视频/短视频","大事发生.mp4");
System.out.println(f);
f = new File(new File("D:/素材/视频/短视频"),"大事发生.mp4");
System.out.println(f);

3. 常见方法

  • createNewFile():创建由当前File对象所表示的新文件(标准文件)
  • mkdir():创建由当前File对象所表示的目录(一级子目录)
  • mkdirs():创建由当前File对象所表示的目录(多级子目录)
  • delete():删除当前File所表示的文件或者目录(空目录)
  • exists():判断当前File表示的文件或目录是否存在
  • getAbsolutePath():获取当前File对象的绝对路径
  • getName():获取当前文件名
  • getParentFile():获取当前RFile所表示的父文件对象
  • isDirectory()
  • isFile()
  • length()
  • lastModified
//获取与系统有关的路径分隔符 window-";"  linux-":"
System.out.println(File.pathSeparatorChar);
//获取与系统有关的名称分隔符 window-"\"  linux="/"
System.out.println(File.separatorChar);

//使用提供的文件(或目录)路径
File f = new File("D:/素材/视频/短视频/大事发生.mp4");
System.out.println(f.toString());
f = new File("D:/素材/视频/短视频","大事发生.mp4");
System.out.println(f);
f = new File(new File("D:/素材/视频/短视频"),"大事发生.mp4");
System.out.println(f);


System.out.println(f.canExecute());
System.out.println(f.canRead());
System.out.println(f.canWrite());
f = new File("D:/素材/视频/短视频/小电影/mp4/xx/私密");
//创建当前File对象所表示的新文件
//        System.out.println("文件创建结果:"+f.createNewFile());

//创建目录,创建一级子目录
//        System.out.println("目录创建结果:"+f.mkdir());
//创建目录,创建多级子目录(包括不存在的父目录)
System.out.println("目录创建结果:"+f.mkdirs());
//在指定的目录中创建指定前缀和后缀的临时文件
File tempFile = File.createTempFile("test",".log",new File("D:/素材/视频/短视频"));
//        new Timer().schedule(new TimerTask() {
//            @Override
//            public void run() {
//                if(tempFile.delete()){
//                    System.out.println("删除成功");
//                }else{
//                    System.out.println("删除失败");
//                }
//            }
//        },5000);
//        System.out.println(f);
//在JVM结束时删除文件
tempFile.deleteOnExit();

f = new File("D:\\素材\\视频\\短视频\\小电影\\mp4\\xx\\私密");
//删除由File所表示的标准文件或者目录(空目录)
System.out.println("删除目录:"+f.delete());
//判断由File所表示的标准文件或者目录是否存在
System.out.println(f.getParentFile().exists());

//获取由该File对象所表示的文件或目录的绝对路径
System.out.println("绝对路径:"+f.getAbsolutePath());
System.out.println("绝对路径表示的文件对象"+f.getAbsoluteFile());

//获取当前文件或目录所表示磁盘的剩余空间(字节)
//1024字节=1KB 1024kb=1MB  1024MB=1GB 1024GB=1TB 1024TB=1PB
System.out.println("当前盘符剩余空间:"+f.getParentFile().getFreeSpace()+"字节");
System.out.println((f.getParentFile().getFreeSpace() / (1024 * 1024 * 1024)));
System.out.println("当前盘符的总空间:"+f.getParentFile().getTotalSpace()+"字节");

f = new File("D:/素材/视频/短视频/大事发生.mp4");
//获取文件名称
System.out.println("文件名:"+f.getName());

System.out.println("父路径:"+f.getParent());

System.out.println("父路径所表示的文件:"+f.getParentFile());

System.out.println("判断File对象是否是目录:"+f.isDirectory());
System.out.println("判断File对象是否是标准文件:"+f.isFile());

f = new File("D:\\素材\\视频\\预告片\\猫和老鼠.mp4");
System.out.println(f.exists());
System.out.println("判断当前文件对象是否是隐藏文件:"+f.isHidden());
//获取当前文件的最后修改时间
long time = f.lastModified();
System.out.println(new Date(time));

//获取目标File对象所表示文件的大小(字节)
long len = f.length();
System.out.println(len / (1024*1024.0));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西伯利亚大熊猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值