1 import java.io.File; 2 import java.io.FileNotFoundException; 3 4 public class SearchFile { 5 6 public static void main(String[] args) throws FileNotFoundException { 7 File files = new File("F:/"); //创建File对象,指向F盘根目录 8 String[] names = files.list(); //获取F盘根目录所有文件和路径,并以字符串数组返回 9 for(String s:names){ //遍历字符串数组10 boolean a = s.startsWith("ja"); //文件名前缀带有ja的返回true,没有则返回false11 boolean b = (new File(files.getAbsolutePath()+s)).isFile(); //判断本次循环的字符串所指向的内容是否是文件,是则返回true.否则返回false12 boolean c = s.contains("va"); //文件名是否包含"va",包含则返回true,否则false13 if(a&&b){ //此处条件根据需要进行修改14 System.out.println(s); //打印出符合条件的文件15 }16 }17 }18 19 }
第11行:一个细节问题
如果将
boolean b = (new File(files.getAbsolutePath()+s)).isFile();
改为
boolean b = (new File(s)).isFile();
则会一直返回false,因为没有指定路径,系统会在项目的目录找s所指向的文件名,但是项目的目录内没有该文件,所以将一直判断不存在该文件
原标题:Java查找指定的(前缀,后缀或中间包含)文件
关键词:JAVA