网站搭建岗位及要求,wordpress优化数据,营销客户管理软件,做外贸网站空间多少g题目如下
扫描指定目录#xff0c;并找到名称中包含指定字符的所有普通文件(不包含目录)#xff0c;并且后续询问该用户是否要删除该文件
本题是关于文件I/O知识中对文件系统操作的应用#xff0c;解答的完整代码如下#xff08;需要的uu自取#xff09;⬇️
在完整…题目如下
扫描指定目录并找到名称中包含指定字符的所有普通文件(不包含目录)并且后续询问该用户是否要删除该文件
本题是关于文件I/O知识中对文件系统操作的应用解答的完整代码如下需要的uu自取⬇️
在完整代码后博主将对代码进行拆分讲解
import java.io.File;
import java.util.Scanner;public class demo1 {public static void main(String[] args) {Scanner scanner new Scanner(System.in);//输入指定目录System.out.println(请输入指定目录);String path scanner.next();File file new File(path);if(!file.isDirectory()){System.out.println(输入目录不合法);System.exit(1);}//输入指定字符System.out.println(请输入指定字符);String key scanner.next();//开始进行扫描scan(file,key);}//扫描函数public static void scan(File file,String key){System.out.println(正在扫描file.getAbsolutePath());if(file null){return;} else if(file.isDirectory()){File[] files file.listFiles();for (File f : files ) {scan(f,key);}}else {if(file.getName().contains(key)){delete(file);}}}//删除操作public static void delete(File file){System.out.println(是否要删除文件(y|n));Scanner scanner new Scanner(System.in);String choice scanner.next();if(choice.equals(y)){file.delete();}else {System.out.println(未删除文件);}}
}1、主方法
main()方法代码中首先要让用户输入指定的目录和指定关键字
值得注意的是在输入指定目录后我们要对用户的输入进行合法性判断
if(!file.isDirectory()){System.out.println(输入目录不合法);System.exit(1);
}
2、scan方法
为了扫描文件夹及文件夹中的子文件夹 我们需要采取递归思路。即如果子文件依然是文件夹就仍用scan方法扫描如果是文件则判断文件名包不包含key关键字
如果文件名包含key关键字那么就进入delete方法判断是否要删除
public static void scan(File file,String key){System.out.println(正在扫描file.getAbsolutePath());if(file null){return;} else if(file.isDirectory()){File[] files file.listFiles();for (File f : files ) {scan(f,key);}}else {if(file.getName().contains(key)){delete(file);}}
}
运行结果