zoukankan      html  css  js  c++  java
  • File过滤器

    File过滤器

    1、listFiles(FileFilter filter) 返回一个抽象路径名数组,表示由此抽象路径名表示的满足指定过滤器的目录中的文件和目录。

    作用:用来过滤文件(Filter对象)

    listFiles会做的事:

    a:如果里面不传FileFilter过滤器,就会返回抽象路径名数组

    b:如果里面传FileFilter过滤器,那么就返回通过过滤器的返回值为true的元素组成的数组。(即符合过滤器的规则。)

    /**
    * @program: intellij idea
    * @description:1、`listFiles(FileFilter filter)` 返回一个抽象路径名数组,表示由此抽象路径名表示的满足指定过滤器的目录中的文件和目录。
    *2、`listFiles(FilenameFilter filter)` 返回一个抽象路径名数组,表示由此抽象路径名表示的满足指定过滤器的目录中的文件和目录。
    * @author: lixy
    * @create: 2020-05-07 12:42
    **/
    public class FileFilterImpl implements FileFilter {

      @Override
      public boolean accept(File pathname) {
          return pathname.isFile() && pathname.getName().endsWith(".java");
      }
    }
    public class Demo02Main {
      public static void main(String[] args) {
          bl(new File("F:\intellij idea\day11\src\com\lixy"));
      }
      private static void bl(File dir) {
          File[] files = dir.listFiles(new FileFilterImpl());
          for (File file : files) {
                  System.out.println(file);
          }
      }
    }
    结果:
    F:intellij ideaday11srccomlixyFileMethod.java
    F:intellij ideaday11srccomlixyMyFile.java

    public class Demo03Main {
      public static void main(String[] args) {
          bl(new File("F:\intellij idea\day11\src\com\lixy"));
      }
      private static void bl(File dir) {
          File[] files = dir.listFiles(new FileFilter() {//匿名内部类,
              @Override
              public boolean accept(File pathname) {
                  return pathname.isFile() && pathname.getName().endsWith(".java");
              }
          });
          for (File file : files) {
                  System.out.println(file);
          }
      }
    }

    public class Demo04Main {
      public static void main(String[] args) {
          bl(new File("F:\intellij idea\day11\src\com\lixy"));
      }
      private static void bl(File dir) {
          //使用Lambda表达式
          File[] files = dir.listFiles((pathname)->{return pathname.isFile() && pathname.getName().endsWith(".java");});
          for (File file : files) {
                  System.out.println(file);
          }
      }
    }

    2、listFiles(FilenameFilter filter) 返回一个抽象路径名数组,表示由此抽象路径名表示的满足指定过滤器的目录中的文件和目录。

    作用:用来过滤文件名称

    public boolean accept(File dir, String name) {//测试指定文件是否应包含在文件列表中。
      //参数
      //dir - 找到该文件的目录。
      //name - 文件的名称。
      return new File(dir,name).isFile() && new File(dir,name).getName().endsWith(".java");
    }
    public class Demo03Main {
      public static void main(String[] args) {
          bl(new File("F:\intellij idea\day11\src\com\lixy"));
      }
      private static void bl(File dir) {
          File[] files = dir.listFiles(new FilenameFilter() {
              @Override
              public boolean accept(File dir, String name) {
                  return new File(dir,name).isFile() && name.endsWith(".java");
              }
          });
          for (File file : files) {
                  System.out.println(file);
          }
      }
    }
  • 相关阅读:
    Spring中使用存储过程
    使用mysql-connector-java.jar连接MySql时出现:Error while retrieving metadata for procedure columns: java.sql.SQLException: Parameter/Column name pattern can not be NULL or empty.
    Spring的JDBC示例
    使用JDBC连接MySql时出现:The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration
    Spring的JDBC框架概述
    数据库中的DDL/DML/DCL解释(转)
    沉默的螺旋--digest
    左边老师长征--性命、生命、使命
    柬埔寨旅游小结
    Spring Security 源码分析(四):Spring Social实现微信社交登录
  • 原文地址:https://www.cnblogs.com/lxy522/p/12846653.html
Copyright © 2011-2022 走看看