news 2026/8/21 10:12:48

Java进阶09文件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java进阶09文件

Java进阶09

一、File类

File类代表操作系统的文件对象**(文件、文件夹)**

1、File类创建对象

方法

说明

public File(String pathname)

根据文件路径创建文件对象

public Fie(String parent,String child)

根据父路径名字符串和子路径名字符串创建文件对象

public File(File parent,String child)

根据父路径对应文件对象和子路径名字符串创建文件对象

  • File对象可以定位文件和文件夹

  • File封装的对象仅仅是一个路径名,这个路径可以是存在的,也可以是不存在的

    //1、根据传入的字符串路径,封装File对象
    File f1 = new File(“D:\A.txt”);
    ?
    //2、根据传入的字符串(父级路径,子级路径) 封装File对象
    File f2 = new File(“D:”,“image”);
    ?
    //3、根据传入(父级路径文件对象,子级路径)封装File对象
    File f3 = new File(new File(“D:”),“stu.txt”);

2、相对路径和绝对路径
  • 绝对路径:从盘符的根目录开始,一直到某个具体的文件(写全了)

  • 相对路径:相对于当前项目的路径进行操作

3、File类的常用方法

方法

说明

public booleanisDirectory()

判断此路径名表示的File是否为文件夹

public booleanisFile()

判断此路径名表示的File是否为文件

public booleanexists()

判断此路径名表示的File是否存在

public longlength()

返回文件的大小(字节数量)

public StringgetAbsolutePath()

返回文件的绝对路径

public String getPath()

返回定义文件时使用的路径

public StringgetName()

返回文件的名称、带后缀

public longLastModifyied()

返回文件你的最后修改时间(时间毫秒值)

public class FileMethodDemo1 { ? ?public static void main(String[] args) { ? ? ? ?File f1 = new File("dau09\A.txt"); ? ? ? ? ?//判断是否是文件夹 ? ? ? ?System.out.println(f1.isDirectory()); ? ? ? ? ?//判断是否是文件 ? ? ? ?System.out.println(f1.isFile()); ? ? ? ? ?//判断是否存在 ? ? ? ?System.out.println(f1.exists()); ? ? ? ? ? ? ? ? //获取文件大小(字节数量),如果是文件夹调用该方法会返回错误数据 ? ? ? ?System.out.println(f1.length()); ? ? ? ?//获取绝对路径 ? ? ? ? ?System.out.println(f1.getAbsolutePath()); ? ? ? ? ? ? ? ? //获取文件名 | 文件夹名 ? ? ? ?System.out.println(f1.getName()); ? ? ? ? ? ? ? ?//获取文件最后一次修改时间 ? ? ? ?long time = f1.lastModified(); ? ? ? ?System.out.println(new Date(time)); ? } }

**需要注意:**length()这个方法,只能返回文件的大小,如果是文件夹调用,不会报错,但是返回的是错误数据!!!

4、File类的创建和删除方法

方法

说明

public booleancreateNewFile()

创建一个新的空的文件

public boolean mkdir()

只能创建一级文件夹

public booleanmkdirs()

可以创建多级文件夹

方法

说明

public boolean delete()

删除由此抽象路径名表示的文件或空文件夹

**注意:**delete()方法只能删除空文件夹,且不走回收站

public class FileMethodDemo3 { ? ?public static void main(String[] args) throws IOException { ? ? ? ?//创建文件 ? ? ? ?File f1 = new File("day09\B.txt"); ? ? ? ?System.out.println(f1.createNewFile()); ? ? ? ? ?//创建文件夹 ? ? ? ?File f2 = new File("day09\aaa"); ? ? ? ?System.out.println(f2.mkdirs()); ? ? ? ? ?//删除文件 ? ? ? ?System.out.println(f1.delete()); ? ? ? ?//删除文件夹(注意:只能删除空文件夹) ? ? ? ?System.out.println(f2.delete()); ? } }
5、File类的遍历方法

方法

说明

public File[]listFiles()

获取当前目录下所有的“一级文件对象”,返回File数组

public class FileMethodDemo4 { ? ?public static void main(String[] args) { ? ? ? ?File dir = new File("D:\"); ? ? ? ? ? ? ? ?//获取当前文件夹下所有的文件和文件夹对象 ? ? ? ?File[] files = dir.listFiles(); ? ? ? ? ?//遍历数组 ? ? ? ?for (File file : files) { ? ? ? ? ? ?System.out.println(file); ? ? ? } ? } }
  • 当调用者File表示的路径不存在时,返回null

  • 当调用者File表示的路径是文件时,返回null

  • 当调用者File表示的路径是一个空文件夹时,返回一个长度为0的数组

  • 当调用者File表示的路径是需要权限才能访问的文件夹时,返回null

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/8 5:20:16

Java进阶06List集合泛型

Java进阶06 集合 一、集合及其体系结构 集合是一个长度可变的容器 1、集合的体系结构 1.1 单列集合单列集合使用add()方法添加集合元素,一次只能添加一个元素。单列集合均实现了Collection接口,该接口还有两个子接口List和Set。List接口 List集合的特点是…

作者头像 李华
网站建设 2026/8/17 9:36:05

什么是当前读和快照读?

在 MySQL InnoDB 中,当前读和快照读是 MVCC 机制下的两种数据读取方式,核心区别在于 是否读取最新版本、是否加锁、是否受其他事务影响,二者分工协作实现了 “读写不阻塞” 的高效并发。 一、快照读(Snapshot Read) …

作者头像 李华
网站建设 2026/8/19 10:59:09

JAVA进阶 THREAD学习10 多线程案例--计时器

标准库中计时器的使用 Timer类的实例化对象TimerTask类的是实例化对象–在run方法中存放运行的代码延迟的时间(相对时间,相对于当前时间之后的多少毫秒等) 时间需要安排schedule public static void main(String[] args) {System.out.println…

作者头像 李华
网站建设 2026/8/20 5:12:31

面试 Java 基础八股文十问十答第二期

面试 Java 基础八股文十问十答第二期 作者:程序员小白条,个人博客 ⭐点赞⭐收藏⭐不迷路!⭐ 11.什么是反射?反射有哪些作用?反射在Sping中的体现 (1): 什么是反射? 反射可以在运行时获取到一个类的所有信息&#xf…

作者头像 李华
网站建设 2026/8/16 23:17:32

毫米波V2I网络的链路层仿真研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

作者头像 李华