一.概念
File对象就表示一个路径,可以是文件的路径,也可以是文件夹的路径
其中在Java中路径分为两种
相对路径:不带盘符,相对于当前项目而言
绝对路径:带盘符
二. File
⑴构造方法
⒈根据父级路径相对文件对象和子级路径字符串创建文件对象
File(File parent,String child)
⒉根据文件路径字符串创建文件对象
File(String pathname)
⒊根据父级路径字符串和子级路径字符串创建文件字符
File(String parent, String child)
⑵常见成员方法
创建File对象后,我们就可以根据路径对文件进行操作
①首先就是判断类方法
获取到文件对象,我们可以判断文件是否存在(exists),判断此文件是否为文件夹(isDirectory),判断此文件是否为文件
如图:我们来根据此图片文件来演示上判断类方法
②其次就是获取类方法
Ⅰ. length
细节:length获取的文件大小是字节类型的
如图:我们来利用该方法获取图片的大小,再除以1024转换为KB
Ⅱ. listFiles 获取当前路径下的所有内容
如图:我们要获取指定路径下的全部内容(文件,文件夹)
注:当File表示的路径是需要权限才能访问的文件夹时,方法返回null
Ⅲ. listFiles(FilenameFilter filter) 利用文件名过滤器获取当前路径下的指定内容
若我们要过滤获取文件夹中指定的文件,那要怎么操作呢?
如图:我们想要获取指定文件夹中的". txt"的文件
其中抽象方法accept的参数含义
参数一:表示父级路径( file\\ aaa)
参数二:表示子级路径字符串( aaa下的子文件a.txt....等)
方法返回值为true则表示返回该指定的文件
方法返回false则表示该文件不是我们想要的
③创建和删除文件
Ⅰ.createNewFile 创建一个新的空的文件
注:方法创建的一定是文件,如果路径中不包含后缀名,则创建一个没有后缀名的文件
Ⅱ. mkdir 创建单级文件夹
如图:我们使用该方法后,可以看到在指定路径下创建了一个新的文件夹
注: mkdir只能创建单级文件夹,不能创建多级文件夹,多级文件夹就是一个文件夹中仍有其他问价夹
Ⅲ. mkdirs
注: mkdirs既可以创建单级文件夹,又可以创建多级文件夹
Ⅳ. delect 删除空的文件或文件夹
delect方法只能删除空的文件夹和文件,那么如何利用该方法删除有内容的文件夹呢?
如图:首先我们要获取该文件夹中的所有内容
然后判断获取内容中的类型
若是文件,直接delect删除
若是文件夹,则递归删除文件夹中的文件,再删除此文件夹
注: delect删除的是空的文件或文件夹并且不经过回收站!