如何过滤File数组以仅将pdf文件分配给数组? 我想要完成的一些伪代码:
File [] files; //this contains [3] array items
files.filter(pdf); //??
System.out.println("PDF only files:" files);
答案 0 :(得分:2)
File dir = new File("/your/dir");
File[] files = dir.listFiles(new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.toLowerCase().endsWith(".pdf");
}
});
答案 1 :(得分:1)
如果您的pdf文件以.pdf
结尾,则只需过滤名称:
List<File> pdfs = new ArrayList<>();
for(File f : files) {
if(f.getName().toLowerCase().endsWith(".pdf")) {
pdfs.add(f);
}
}
答案 2 :(得分:0)
如果您使用Apache Commons
,也可以使用SuffixFileFilter
File[] files = directory.listFiles(
(FileFilter) new SuffixFileFilter(".pdf", IOCase.INSENSITIVE));