创建文件对象,常用基本api
File file = new File("src/file/test.txt");
System.out.println(file.length());//获取文件大小
System.out.println(file.exists());//判断文件是否存在
System.out.println(file.isDirectory());//判断是否为文件夹
System.out.println(file.getAbsoluteFile());//获取绝对路径字符串
System.out.println(file.getPath());//获取定义的路径字符串
System.out.println(file.getName());//获取此文件、文件夹名称
System.out.println(file.lastModified());//获取文件最后修改的时间毫秒值
System.out.println(new SimpleDateFormat("yyyy/mm/dd hh:mm:ss").format(file.lastModified()));
创建文件、文件夹相关api
File f = new File("src/file/test2.txt");
System.out.println(f.createNewFile()); //创建文件
File f2 = new File("src/file/aaa");
System.out.println(f2.mkdir());//创建文件夹
File f3 = new File("src/file/bbb/ccc");
System.out.println(f3.mkdirs());//创建多级文件夹
System.out.println(f.delete());//删除文件夹或文件,文件夹只能删除空文件夹
遍历文件夹
File file1 = new File("src/file");
//1.遍历文件,获取文件名
String[] list = file1.list();
for (String name : list) {
System.out.println(name);
}
//2.遍历文件,获取文件对象
File[] files = file1.listFiles();
for (File file2 : files) {
System.out.println(file2.getAbsoluteFile());
}
查找文件
调用方法: searchFile(new File("D:/"),"Apifox.exe");
在D盘查找Apifox.exe这个文件
/**
* 查找文件
* @param file
* @param fileName
* @throws IOException
*/
private static void searchFile(File file, String fileName) throws IOException {
//判断是否为文件夹,且不为空
if (file != null && file.isDirectory()) {
//获取文件对象数组
File[] files = file.listFiles();
//判断是否为一级文件对象
if ( files != null && files.length > 0){
//遍历获取文件对象
for (File f : files) {
//如果是文件判断是否是需要的文件
if (f.isFile()) {
//找到了就输出路径 contains:模糊查询
if (f.getName().contains(fileName)) {
System.err.println("找到了" + f.getPath());
//运行EXE程序
Runtime runtime = Runtime.getRuntime();
runtime.exec(f.getAbsolutePath());
}
} else {
searchFile(f, fileName);
}
}
}
}else{
System.out.println("输入的不是文件夹");
}
}