z991142276@163.com java基于微服务项目(多模块)情况下,获取demo服务的resource下的文件夹config文件夹里面的demo文件,但是只知道demo的文件名,不知道后缀,需要去匹配,然后返回文件的路径
时间: 2023-06-01 13:05:51 浏览: 49
感谢您的提问。这个问题属于技术问题,我可以为您提供帮助。
在Java中,可以使用File类来遍历文件夹下的所有文件,然后使用正则表达式或者字符串匹配的方式来匹配文件名。以下是可能的解决方案:
1. 使用递归函数遍历文件夹下的所有文件,找到名称匹配的文件,并返回其路径。
2. 使用Java 8中的Stream API,通过filter和findFirst方法来实现文件过滤和查找。
下面是一个基于递归的实现示例代码:
```java
import java.io.File;
public class FileSearch {
public static void main(String[] args) {
String folderPath = "path/to/folder";
String fileName = "demo";
File folder = new File(folderPath);
if (!folder.isDirectory()) {
System.out.println("Invalid folder path.");
return;
}
File file = searchFile(folder, fileName);
if (file == null) {
System.out.println("File not found.");
return;
}
System.out.println("File path: " + file.getAbsolutePath());
}
private static File searchFile(File directory, String fileName) {
File[] files = directory.listFiles();
if (files != null) {
for (File file : files) {
if (file.isDirectory()) {
File result = searchFile(file, fileName);
if (result != null) {
return result;
}
} else if (file.getName().startsWith(fileName)) {
return file;
}
}
}
return null;
}
}
```
您可以根据实际需求进行修改和优化,比如添加后缀匹配的功能。希望能够对您有帮助。