1.遍历文件
public static void main(String[] args) throws Exception {
String filepath = "E:/IDEA/workspace/MyWorkspace/JavaTest";
File file = new File(filepath);
getfile(file);
}
public static void getfile(File file) {
System.out.println(file.getAbsolutePath());
File[] files = file.listFiles();
for (File file1 : files) {
if (file1.isDirectory()) {
getfile(file1);
} else {
System.out.println(file1);
}
}
}
main
E:\IDEA\workspace\MyWorkspace\JavaTest
E:\IDEA\workspace\MyWorkspace\JavaTest\JavaTest.iml
E:\IDEA\workspace\MyWorkspace\JavaTest\src
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\LinkedBinaryTree.java
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\Node.java
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\QuickSort.java
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\Test.java
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\Tree.java
2.使用文件过滤器寻找.java结尾的所有文件
public static void main(String[] args) throws Exception {
String filepath = "E:/IDEA/workspace/MyWorkspace";
File file = new File(filepath);
getfile(file);
}
public static void getfile(File file) {
//1.FileFilter 参数:File pathname(文件路径)
/*File[] files = dir.listFiles(pathname->
pathname.isDirectory() ||
pathname.getName().toLowerCase().endsWith(".java")
);*/
////2.FilenameFilter 参数:File dir,String name(文件路径和文件名)
File[] files = file.listFiles((dir,name)->
new File(dir,name).isDirectory() || name.toLowerCase().endsWith(".java")
);
for (File file1 : files) {
if (file1.isDirectory()) {
getfile(file1);
} else {
System.out.println(file1);
}
}
}
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\LinkedBinaryTree.java
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\Node.java
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\QuickSort.java
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\Test.java
E:\IDEA\workspace\MyWorkspace\JavaTest\src\com\Tree.java