package com.sheng.filefinder;

import java.io.IOException;
import java.nio.file.FileVisitResult;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.SimpleFileVisitor;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.ArrayList;
import java.util.List;

/**
 * 如果使用的是JDK 1.7,那么Files.walkFileTree会是一个很好的选择。这个类位于java.nio.file包下,这个包是JDK 1.7中新增的
 * @author Administrator
 *
 */
public class FileFinder2 {
	public static void main(String[] args) throws IOException {
		Path startingDir = Paths.get("D:\\ksDownloads");
		FindFileVisitor findJavaVisitor = new FindFileVisitor(".jar");
		Files.walkFileTree(startingDir, findJavaVisitor);
		for (String name : findJavaVisitor.getFilenameList()) {
			System.out.println(name);
		}
	}
}

class FindFileVisitor extends SimpleFileVisitor<Path> {
    private List<String> filenameList = new ArrayList<String>();
    private String fileSuffix = null;
    public FindFileVisitor(String fileSuffix) {
        this.fileSuffix = fileSuffix;
    }
  
    @Override  
    public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) {  
        if (file.toString().endsWith(fileSuffix)) {  
            filenameList.add(file.toString());  
        }  
        return FileVisitResult.CONTINUE;  
    }  
  
    public List<String> getFilenameList() {  
        return filenameList;  
    }  
  
    public void setFilenameList(List<String> filenameList) {  
        this.filenameList = filenameList;  
    }  
} 
最近下载更多
FshfshFsh  LV2 2021年3月7日
freedom2017  LV14 2020年3月30日
情不知所起  LV12 2019年11月13日
wupujian  LV17 2018年1月8日
12_3_4  LV12 2017年10月29日
qiqi0227  LV5 2017年8月20日
cuiqingyang  LV2 2017年6月5日
傻耙旯丌  LV1 2016年3月10日
hellodcj  LV4 2014年10月13日
gjy20075982  LV11 2014年9月28日
最近浏览更多
xiaoshu177ovo 2021年11月2日
暂无贡献等级
maki666  LV1 2021年4月19日
xb1406112453  LV5 2021年3月20日
new_test_yang  LV1 2021年3月8日
FshfshFsh  LV2 2021年3月7日
hkcliliang  LV5 2020年6月22日
freedom2017  LV14 2020年3月30日
情不知所起  LV12 2019年11月13日
打手犯规了  LV1 2019年9月5日
13734993  LV7 2019年8月25日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友