
用java编写程序,键盘输入一个目录名称,要求分别输出该目录中所有子目录名和以exam开头的文件名。 5
展开全部
public static void findFileList(File dir,HashSet dirs,HashSet fileNames ) {
if (!dir.exists() || !dir.isDirectory()) {// 判断是否存在目录
return;
}
String[] files = dir.list();// 读取目录下的所有目录文件信息
for (int i = 0; i < files.length; i++) {// 循环,添加文件名或回调自身
File file = new File(dir, files[i]);
if (file.isFile() && file.getName().startsWith("exam")) {// 如果文件
fileNames.add(dir + "\\" + file.getName());
} else {// 如果是目录
dirs.add(dir);
findFileList(file,dirs,fileNames);// 回调自身继续查询
}
}
}
public static void main(String[] args) {
HashSet dirs = new HashSet();
HashSet fileNames = new HashSet();
findFileList(new File("D:\\zhidao"),dirs,fileNames);
System.out.println("目录:"+dirs);
System.out.println("exam开头的文件:"+fileNames);
}
if (!dir.exists() || !dir.isDirectory()) {// 判断是否存在目录
return;
}
String[] files = dir.list();// 读取目录下的所有目录文件信息
for (int i = 0; i < files.length; i++) {// 循环,添加文件名或回调自身
File file = new File(dir, files[i]);
if (file.isFile() && file.getName().startsWith("exam")) {// 如果文件
fileNames.add(dir + "\\" + file.getName());
} else {// 如果是目录
dirs.add(dir);
findFileList(file,dirs,fileNames);// 回调自身继续查询
}
}
}
public static void main(String[] args) {
HashSet dirs = new HashSet();
HashSet fileNames = new HashSet();
findFileList(new File("D:\\zhidao"),dirs,fileNames);
System.out.println("目录:"+dirs);
System.out.println("exam开头的文件:"+fileNames);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |