java遍历(过滤)盘符下的文件

    /**
     * 测试打印目录下的所有文件名
     */
    @Test
    public void example(){


        File file = new File("C:\\");           //创建C盘下面的File对象

        if(file.isDirectory()){     //判断当前文件目录是否存在

            String[] names = file.list();       //获得目录下所有文件的文件名

            for(String name : names){           //循环

                System.out.println(name);           //输出文件名

            }
        }

        System.out.println("-----------------------------------------------------------");

        /**
         * 过滤文件名对象
         */
        FilenameFilter filter = new FilenameFilter() {

            /**
             * 重写FilenameFilter对象中的accept方法
             * @param dir                   地址
             * @param name                  文件名
             * @return
             */
            @Override
            public boolean accept(File dir, String name) {

                File currentFile = new File(dir,name);

                if(currentFile.isFile() && name.endsWith(".sys")){          //判断是否为文件并以.sys结尾
                    return true;
                }else{
                    return false;
                }
            }
        };

        if(file.exists()){
            String[] names = file.list(filter);   //根据filter过滤获得目录下以.sys为拓展名的文件名称

            for (String name : names){
                System.out.println(name);//输出文件名
            }

        }

    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值