本文介绍了带有通配符的Java 7 nio列表目录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用通配符在目录中找到一个文件。我在Java 6中有这个但想要将代码转换为Java 7 NIO:
I'd like to find a file in a directory using wildcard. I have this in Java 6 but want to convert the code to Java 7 NIO:
File dir = new File(mydir);
FileFilter fileFilter = new WildcardFileFilter(identifier+".*");
File[] files = dir.listFiles(fileFilter);
没有 WildcardFileFilter
,而我'用globs玩了一下。
There is no WildcardFileFilter
, and I've played around a bit with globs.
推荐答案
你可以将一个glob传递给DirectoryStream
You can pass a glob to a DirectoryStream
import java.nio.file.DirectoryStream;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.Path;
...
Path dir = FileSystems.getDefault().getPath( filePath );
DirectoryStream<Path> stream = Files.newDirectoryStream( dir, "*.{txt,doc,pdf,ppt}" );
for (Path path : stream) {
System.out.println( path.getFileName() );
}
stream.close();
这篇关于带有通配符的Java 7 nio列表目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!