前两天我们学习了File类的用法,file是文件的意思,这个在我们生活中是很常见的,比如你要删除一个文件或者文件夹,增加一个文件或者文件夹,修改一个文件或者文件夹,查找一个文件或者文件夹,这些都可以用命令窗口也就是编程来直接操作,可以不用 直接去用鼠标点击操作文件夹。(总结老师的干货,是另一种复习方法)
file类就是用来描述一个文件或者文件夹。
但是需要注意一点的是:根据系统的不同,在运用的时候会有一点小点需要注意一下,windows系统上, \ 和 / 都是 可以作为目录的 分隔符的,要注意的是,如果你用的是 \ 那么需要两个\转如果是/, 只需要一个 。 linux 系统上, 分隔符 是/
*知识点一:*
创建一个FileL类的对象:File file = new File(“你需要操作的文件位置”);
查看一个文件是否存在:file.exists()
知识点二
绝对路径 和 相对路径
绝对路径: 在硬盘上的 完整路径, 绝对路径一定是以盘符开头的
相对路径 : 是指资源文件 相对于 当前程序所在路径
(盘符: . –> 当前路径
.. 上一级路径)
file类中的常见用法
1.创建 2.修改 3.删除 4.查询(获取)
1、创建
file.createNewFile()
创建:
boolean createNewFile()throws IOException 在指定的位置 创建一个 空文件, 如果成功就返回 true, 失败返回fasle
* 注意: 这个方法声明了一个异常的抛出,所以调用这个方法的时候,要注意 异常的处理(捕获处理 或者 抛出处理)
file.mkdir()
mkdir() 是创建一个目录,代表只会创建 最后一级目录
file.mkdirs()
mkdirs(), 代表可以创建多个目录,有多少个不存在的 就可以创建多少个
2、修改
file.renameTo
renameTo(File dest) 如果目标文件 与 源文件 如果是在同一个路径下,那么renameTo 是重命名,
如果 目标文件 和 源文件 不在同一个路径下,那么renameTo的作用是剪切加上重命名, 但是renameTo只能给操作文件,不能操作文件夹
3、删除
boolean delete()
delete方法不能删除 有内容的文件夹, 也就是说,只能删除空文件夹
void deleteOnExit()
删除文件或目录
jvm退出的时候, 才删除了这个文件
3、判断
判断
boolean exists()
判断是否存在
boolean isAbsolute()
判断是否是绝对路径
boolean isDirectory()
判断是否是文件夹
boolean isFile()
判断是否是文件
boolean isHidden()
判断是否有隐藏文件
获取
File getAbsoluteFile()
File 类型, File类中重写 toString方法
String getAbsolutePath()
String 类型
String getCanonicalPath()
String 类型
String getName()
最后一级 文件夹或者 文件的 名字
String getParent()
父目录的 完整路径
String getPath()
路径
long length()
文件大小, 字节数, 所以如果路径是 文件夹路径,那么无法获取到这个长度,是0
long lastModified()
获取最后一次更改文件的 时间戳
文件夹相关的方法:
static File[] listRoots()
文件系统的根盘符
String[] list()
返回你指定的目录下 的 文件或者目录
String[] list(FilenameFilter filter)
创建过滤器对象
MyFilter filter = new MyFilter();
这个方法的参数 接口 FilenameFilter 的对象, 所以这里使用接口的多态自定义接口的实现类, 然后传实现类的对象, 实现接口的方法,告诉 file对象 要过滤的是什么条件
class MyFilter implements FilenameFilter