zoukankan      html  css  js  c++  java
  • java使用递归遍历文件,使用内部类过滤文件,使用匿名内部类过滤文件

    public class TestFile {
      public static void main(String [] args) {
      //遍历文件夹中文件名称,若文件夹中还存有文件夹,递归读取文件夹名称
        File file = new File("D:\\javafile"); //假设文件保存在D:\\javafile中
        new TestFile().show(file);
      }

      public void show(File file) {
        File[] files = file.listFiles();
        for(File fs : files) {
          System.out.println(fs.getName());
          if(fs.isDirectory()) {
            show(fs);
          }
        }
      }
    }

    //使用内部类过滤文件

    public class TestFile{
      public static void main(String [] args) {
        File file = new File("D:\\javafile");
        new TestFile().show(file);
      }

      public void show(File file) {
        File [] files = file.listFiles();

        for(File fs : files) {
          if(new MyFilenameFilter().accept(fs, fs.getName())) {
            System.out.println(fs.getName());
          }
        }
      }

      //在TestFile类的内部,定义MyFilenameFilter类,实现FilenameFilter过滤器的方法
      class MyFilenameFilter implements FilenameFilter{
        public boolean accept(File file, String name) {
        

        //假设在D:\\javafile文件夹内部保存有.txt格式的文件

        if(name.endsWith(".txt")) {
            return true;
          }
          return false;
        }
      }
    }

    //使用匿名内部类过滤文件

    public class TestFile{
      public static void main(String [] args) {
        File file = new File("D:\\javafile");
        new TestFile().show(file);
      }

      public void show(File file) {

         //红色部门极为匿名内部类部分
        File [] files = file.listFiles(new FilenameFilter(){
          @Override
          public boolean accept(File file, String name) {
            if(name.endsWith(".txt")) {
              return true;
            }
            return false;
          }
        });

        for(File fs : files) {
          System.out.println(fs.getName());
        }
      }
    }

  • 相关阅读:
    APPIUM Android 定位方式
    SQL Server 根据存储过程的结果集创建临时表
    Ubuntu18.04 设置开机自启动服务
    ubuntu-18.04 (各版本镜像下载) 及的环境初始化配置
    CentOS 7 编译安装PHP5.6.31
    Centos7 编译安装 MySQL 5.5.62
    Windows 2008 R2 远程桌面连接记录(客户端IP)
    CentOS crontab定时任务
    CentOS 7 安装MySql 5.5.60
    SQL Server 数据库错误码解释
  • 原文地址:https://www.cnblogs.com/helloworldlx/p/8503413.html
Copyright © 2011-2022 走看看