1. 程式人生 > 程式設計 >使用java檔案過濾器輸出制定格式檔案路徑的例項程式碼

使用java檔案過濾器輸出制定格式檔案路徑的例項程式碼

使用java檔案過濾器輸出制定格式檔案路徑的例項程式碼如下所示:

一、使用輸出路徑判斷過濾

import java.io.File;
public class demo_file04 {
  public static void main(String[] args) {
    fileall(new File("D:\\coding"));
  }
  private static void fileall(File f1) {
//    System.out.println(f1);
    //判斷檔案是否是目錄
    if (f1.isDirectory()) {
//      獲取檔案列表繼續遍歷
      File[] files = f1.listFiles();
      for (File file : files) {
//        遞迴遍歷檔案
        fileall(file);
      }
    } else {
//      輸出檔案目錄
      if(f1.toString().toLowerCase().endsWith(".jar")){System.out.println(f1);}      
    }
  }
}

二、使用檔案過濾器匿名物件類

import java.io.File;
import java.io.FileFilter;
public class demo_file05 {
  public static void main(String[] args) {
    fileall(new File("D:\\coding"));
  }
  private static void fileall(File f1) {
//    System.out.println(f1);
    //判斷檔案是否是目錄
    if (f1.isDirectory()) {
//      獲取檔案列表繼續遍歷
      File[] files = f1.listFiles(new FileFilter() {
        @Override
        public boolean accept(File file) {
          if(file.isDirectory()){
            return true;
          }
          return file.getName().toLowerCase().endsWith("java");
        }
      });
      for (File file : files) {
//        遞迴遍歷檔案
        fileall(file);
      }
    } else {
//      輸出檔案目錄
      System.out.println(f1);
    }
  }
}

三、使用lambda表示式使用過濾器

import java.io.File;
import java.io.FileFilter;
public class demo_file06 {
  public static void main(String[] args) {
    fileall(new File("D:\\coding"));
  }
  private static void fileall(File f1) {
//    System.out.println(f1);
    //判斷檔案是否是目錄
    if (f1.isDirectory()) {
//      獲取檔案列表繼續遍歷
      File[] files = f1.listFiles((File file)->{
        if(file.isDirectory()){
          return true;
        }
        return file.getName().toLowerCase().endsWith("java");
      });
      for (File file : files) {
//        遞迴遍歷檔案
        fileall(file);
      }
    } else {
//      輸出檔案目錄
      System.out.println(f1);
    }
  }
}
File[] files = f1.listFiles((File file)->{
        if(file.isDirectory()){
          return true;
        }
        return file.getName().toLowerCase().endsWith("java");
      });
//等價
File[] files = f1.listFiles(file->file.isDirectory() || file.getName().toLowerCase().endsWith("java"));

總結

以上所述是小編給大家介紹的使用java檔案過濾器輸出制定格式檔案路徑的例項程式碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!