我使用此代码来获取目录中的所有文件。但通过这段代码,我获得了文件名和目录路径。您能帮我修复代码,使其仅返回不带文件路径的文件名列表吗?
public List<String> getAllDirFiles() {
List<String> fileNames = new ArrayList<>();
try (DirectoryStream<Path> directoryStream
= Files.newDirectoryStream(Paths.get("repository"))) {
for (Path path : directoryStream) {
fileNames.add(path.toString());
}
} catch (IOException ex) {}
return fileNames;
}
最佳答案
此代码将准确返回位于名为“repository”的目录中的文件名列表。我特地使用了Java Streaming API,因为问题的标签是java-8
List<String> fileNames = Files.list(Paths.get("repository"))
.filter(Files::isRegularFile)
.map(Path::getFileName)
.map(Object::toString)
.collect(Collectors.toList());
关于java - 获取目录中的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25341219/