你的位置:首页 > Java教程

[Java教程]Java查找指定的(前缀,后缀或中间包含)文件


 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所指向的文件名,但是项目的目录内没有该文件,所以将一直判断不存在该文件