下面是使用Files.walkFileTree()方法来找出指定文件夹下所有大于指定大小的文件的示例代码:
1 import java.io.IOException; 2 import java.nio.file.*; 3 import java.nio.file.attribute.BasicFileAttributes; 4 5 public class FileSizeFilter { 6 public static void main(String[] args) throws IOException { 7 Path folder = Paths.get("your_folder_path"); 8 long sizeThreshold = 1024 * 1024; // 1MB 9 10 Files.walkFileTree(folder, new SimpleFileVisitor<Path>() { 11 @Override 12 public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { 13 long fileSize = attrs.size(); 14 if (fileSize > sizeThreshold) { 15 System.out.println(file); 16 } 17 return FileVisitResult.CONTINUE; 18 } 19 }); 20 } 21 }
上面的代码中,你需要将"your_folder_path"替换为你要搜索的文件夹的路径。这段代码会递归遍历该文件夹下的所有文件,对每个文件判断其大小是否大于指定大小,如果满足条件,则将文件路径打印出来。
下面是使用Files.walkFileTree()方法来找出指定文件夹下所有扩展名为.txt和.java的文件的示例代码:
1 import java.io.IOException; 2 import java.nio.file.*; 3 import java.nio.file.attribute.BasicFileAttributes; 4 5 public class FileExtensionFilter { 6 public static void main(String[] args) throws IOException { 7 Path folder = Paths.get("your_folder_path"); 8 9 Files.walkFileTree(folder, new SimpleFileVisitor<Path>() { 10 @Override 11 public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { 12 String fileName = file.getFileName().toString(); 13 if (fileName.endsWith(".txt") || fileName.endsWith(".java")) { 14 System.out.println(file); 15 } 16 return FileVisitResult.CONTINUE; 17 } 18 }); 19 } 20 }
上面的代码中,同样需要将"your_folder_path"替换为你要搜索的文件夹的路径。代码会递归遍历该文件夹下的所有文件,对每个文件判断其扩展名是否为.txt或.java,如果满足条件,则将文件路径打印出来。
下面是使用Files.walkFileTree()方法来找出指定文件夹下所有包含指定字符串的txt文件的示例代码:
1 import java.io.IOException; 2 import java.nio.file.*; 3 import java.nio.file.attribute.BasicFileAttributes; 4 5 public class FileContentFilter { 6 public static void main(String[] args) throws IOException { 7 Path folder = Paths.get("your_folder_path"); 8 String searchString = "your_search_string"; 9 10 Files.walkFileTree(folder, new SimpleFileVisitor<Path>() { 11 @Override 12 public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { 13 if (file.toString().endsWith(".txt")) { 14 String content = new String(Files.readAllBytes(file)); 15 if (content.contains(searchString)) { 16 System.out.println(file); 17 } 18 } 19 return FileVisitResult.CONTINUE; 20 } 21 }); 22 } 23 }
同样,需要将"your_folder_path"替换为你要搜索的文件夹的路径,将"your_search_string"替换为你要搜索的字符串。代码会递归遍历该文件夹下的所有文件,对每个扩展名为.txt的文件读取其内容,并判断是否包含指定字符串,如果满足条件,则将文件路径打印出来。
标签:java,课后,动脑,IOException,file,import,folder,public From: https://www.cnblogs.com/litianyu1969/p/17783420.html