JAVA基础知识之File类
JAVA基础知识之File类
目录
前言
Java File是java IO流中非常重要的一个类,在包java.io.File中,可以根据你的系统类型为你提供进入文件系统的能力,通过java IO流你可以做到:
一、File是什么
Java File是java IO流中非常重要的一个类,在包java.io.File中,可以根据你的系统类型为你提供进入文件系统的能力,通过java IO流你可以做到:
- 判断一个文件夹是否存在
- 创建一个文件夹目录如果该文件夹不存在
- 获取文件的大小
- 重命名或者移动一个文件
- 删除文件
- 查看目录下的文件
二、File类的使用
1.创建一个文件
在使用File类之前,我们必须创建File对象。
代码如下:
File file = new File("/Users/wangzhiwang/Destop");
2.判断文件或目录是否存在
可以通过File类的exists()方法来判断file是否存在
代码如下:
System.out.println(file.exists());
3.在文件夹不存在的情况下创建目录
可以通过File类的mkdir()方法来创建目录(如果文件目录不存在的话),如果你的文件路径上存在不存在的目录,即你需要创建多级目录的情况下,请使用mkdirs()方法
代码如下:
File file_mkdir = new File("/Users/wangzhiwang/Destop/test");
boolean isCreated = file.mkdir();
File file_mkdirs = new File("/Users/wangzhiwang/Destop/mkdirs");
boolean isCreatedMkdirs = file.mkdirs();
4.获取文件长度
你可以通过length()方法来获取文件的字节长度
代码如下:
File fileLength = new File("/Users/wangzhiwang/Destop/test");
long length = file.length();
5.重命名一个文件或者文件夹
可以通过方法renameTo()来重命名一个文件或者文件夹
File fileRename = new File("/Users/wangzhiwang/Destop/test/rename.txt");
fileRename.renameTo(new File("/Users/wangzhiwang/Destop/test/renamed.txt"));
值得注意的是,该方法同时可以用来移动一个文件到不同的目录,这里学习过linux的同学们可能会同时想到linux中的mv命令也同时有相同的作用。
该方法返回一个布尔值,表示该重命名是否成功。重命名失败可能会有多种原因,例如没有权限以及当前文件正在被使用等。
同时该方法也可以对文件夹起作用
6.删除一个文件
File fileRename = new File newFile = new File("/Users/wangzhiwang/Destop/test/rename.txt");
boolean isSuccess = newFile.delete();
该方法返回一个布尔值,表示删除操作是否成功。
同时该方法也可以对文件夹起作用
7.递归删除文件夹以及其子文件夹
值得注意的是,delete方法在删除文件夹时只能删除空文件夹,如果想要删除其下的所有文件,我们必须使用递归方法
public static boolean deleteDir(File dir){
File[] files = dir.listFiles();
if(files != null){
for(File file : files){
if(file.isDirectory()){
deleteDir(file);
} else {
file.delete();
}
}
}
return dir.delete();
}
8.查看文件夹下的所有文件
可以通过list方法或者listFiles方法来获取文件夹下的文件。这两个方法的不同点list方法返回的是String数组而listFiles返回的是file数组,存储该文件夹下的文件
File file = new File("c:\\data");
String[] fileNames = file.list();
File[] files = file.listFiles();
9.判断文件是否是文件夹
通过 isDirectory方法,我们可以判断一个file类是否是文件夹,返回一个boolean类型
File fileRename = new File("/Users/wangzhiwang/Destop/test/rename.txt");
boolean isDir = fileRename.isDirectory();
总结
以上就是今天记录的内容,本文仅仅简单介绍了File类的使用,而其中还含有许多在实际运用中十分使用的方法,我将在源码分析中介绍。上一篇: IDEA2020配置Git 实现从GitLab中导入项目
下一篇: Git常用命令汇总
推荐阅读