Java File
概念:代表物理盘符中的一个文件或者文件夹。
常用方法:
createNewFile()//创建一个新文件
mkdirs()//创建一个新目录
delete()//删除文件或空目录
exists()//判断File对象所对象所代表的对象是否存在
getAbsolutePath()//获取文件的绝对路径
getName()//取得名字
getParent()//获取文件/目录所在的目录
isDirectory()//是否是目录
isFile()//是否是文件
length()//获得文件的长度
listFiles()//列出目录中的所有内容
renameTo()//修改文件名
eg:
常用方法
File 表示文件时
/**
File: 表示文件
1 创建
2 删除
3 获取
4 判断
5 重命名
*/
public static void fileOpe() throws IOException {
//File对象: 表示磁盘中的一个文件
File file = new File("e:\\javaee2308.txt");
System.out.println(file);
//1 创建
if (!file.exists()) {
System.out.println("创建结果:"+file.createNewFile());
} else {
System.out.println("文件已存在...");
}
//2 删除
// System.out.println("删除结果"+file.delete());
//3 获取
System.out.println("文件名:"+file.getName());
System.out.println("文件路径:"+file.getPath());
System.out.println("文件绝对路径:"+file.getAbsolutePath());
System.out.println("文件大小:"+file.length());
System.out.println("文件最后一次的修改时间:"+new Date(file.lastModified()));
//4 判断
System.out.println("判断是否存在:"+file.exists());
System.out.println("判断是否是文件:"+file.isFile());
System.out.println("判断是否隐藏:"+file.isHidden());
System.out.println("判断是否可写:"+file.canWrite());
//5 重命名(具有剪切功能)
System.out.println("重命名结果:"+file.renameTo(new File("e:\\QianFeng\\aaa.txt")));
}
File 表示目录时
/**
File: 表示目录
1 创建
2 删除
3 获取
4 判断
5 重命名
6 获取目录中的文件和子目录
*/
public static void dirOpe() {
//创建File对象
File dir = new File("e:\\aaa\\bbb\\ccc");
System.out.println(dir);
//1 创建
//dir.mkdir(); //单级目录
//多级目录
if (dir.exists()) {
System.out.println("创建结果:" + dir.mkdirs());
} else {
System.out.println("已存在");
}
//2 删除
// System.out.println(dir.delete());
//3 获取
System.out.println("目录名:"+dir.getName());
System.out.println("获取路径:"+dir.getPath());
System.out.println("获取绝对路径:"+dir.getAbsolutePath());
//4 判断
System.out.println("判断是否存在:"+dir.exists());
System.out.println("判断是否是目录:"+dir.isDirectory());
System.out.println("判断是否隐藏:"+dir.isHidden());
//5 重命名
System.out.println("重命名结果:"+dir.renameTo(new File("e\\aaa\\bbb\\xxx")));
//6 获取目录中的子目录和文件
File dir2 = new File("D:\\Users\\胡昊龙\\Pictures\\美图");
File[] files = dir2.listFiles(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
return name.endsWith(".png");
}
});
if (files != null) {
for (File file : files) {
System.out.println(file.getName());
}
}
}
常用案例
1 递归显示文件夹和文件
代码演示:文章来源:https://www.toymoban.com/news/detail-795919.html
package StageOne.day21.demoIO;
import java.io.File;
/**
* @author 胡昊龙
* @version 1.0
* @description: TODO
* @date 2024/1/16 17:09
*/
public class TestFile2 {
public static void main(String[] args) {
listDir(new File("D:\\Users\\胡昊龙\\Pictures"),0);
}
//案例1:递归显示文件夹
public static void listDir(File dir, int level) {
File[] files = dir.listFiles();
System.out.println(getSep(level)+dir.getName());
level++;
if (files != null) {
for (File file : files) {
if (file.isDirectory()) {
listDir(file,level);
} else {
System.out.println(getSep(level)+file.getName());
}
}
}
}
//目录分级显示
public static String getSep(int level) {
StringBuilder builder = new StringBuilder("|");
for (int i = 0; i < level; i++) {
builder.append("__");
}
return builder.toString();
}
}
2 递归删除
代码演示:文章来源地址https://www.toymoban.com/news/detail-795919.html
//案例2:递归删除目录
public static void listDelete(File dir){
File[] files = dir.listFiles();
if (files != null) {
for (File file : files) {
if(file.isDirectory()){
listDelete(file);
}else{
System.out.println(file+"..."+file.delete());//删除文件
}
}
}
System.out.println(dir+"..."+dir.delete());//删除目录
}
到了这里,关于从零学Java File的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!