java利用文件扩展名查找文件且不区分大小写
时间: 2024-09-10 12:30:35 浏览: 77
文件按照window 的排序规则-Java实现
3星 · 编辑精心推荐
在Java中,你可以使用`java.nio.file`包下的`Files`和`Paths`类提供的方法来查找具有特定扩展名的文件,而且这个过程可以实现不区分大小写。以下是一个示例代码,它展示了如何实现这一功能:
```java
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.Path;
import java.util.stream.Stream;
public class FileSearch {
public static void main(String[] args) {
Path dir = Paths.get("你的文件夹路径"); // 替换为你要搜索的目录路径
String extension = ".txt"; // 你要查找的文件扩展名
try (Stream<Path> paths = Files.walk(dir)) {
paths.filter(Files::isRegularFile) // 过滤出文件
.filter(path -> path.toString().toLowerCase().endsWith(extension.toLowerCase())) // 检查文件扩展名(不区分大小写)
.forEach(System.out::println); // 输出匹配的文件路径
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在这段代码中,我们首先通过`Paths.get("你的文件夹路径")`指定了要搜索的目录。接着,使用`Files.walk(dir)`创建了一个流(Stream),它包含目录中的所有文件和子目录路径。通过`filter(Files::isRegularFile)`方法过滤出文件,然后使用`filter(path -> path.toString().toLowerCase().endsWith(extension.toLowerCase()))`确保只选取文件扩展名与指定扩展名相匹配的文件。最后,使用`forEach(System.out::println)`遍历并输出这些文件的路径。
阅读全文