Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java를 사용하여 폴더에서 디렉토리(전용)를 가져오는 방법은 무엇입니까?

<시간/>

ListFiles() 메서드는 현재(File) 개체가 나타내는 경로에 있는 모든 파일(및 디렉터리)의 개체(추상 경로)를 포함하는 배열을 반환합니다.

파일 필터 인터페이스는 listFiles() 메소드에 매개변수로 전달할 수 있는 경로 이름에 대한 필터입니다. 이 메서드는 전달된 필터에 전달된 파일 이름을 필터링합니다.

폴더의 디렉토리를 가져오려면 디렉토리만 받아들이고 listFiles() 메소드에 매개변수로 전달하는 FileFilter를 구현하십시오.

다음은 ExampleDirectory의 내용에 대한 스크린샷입니다.

Java를 사용하여 폴더에서 디렉토리(전용)를 가져오는 방법은 무엇입니까?

예시

import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
public class MyExample{
   public static void main(String args[]) throws IOException {
    //Creating a File object for directory
    File directoryPath = new File("D:\\ExampleDirectory");
    //Creating filter for directories files
    FileFilter fileFilter = new FileFilter(){
         public boolean accept(File dir) {          
            if (dir.isDirectory()) {
               return true;
            } else {
               return false;
            }
         }
      };        
      File[] list = directoryPath.listFiles(fileFilter);
      System.out.println("List of the jpeg files in the specified directory:");  
      for(File fileName : list) {
         System.out.println(fileName);
      }  
   }
}

출력

List of the jpeg files in the specified directory:
D:\ExampleDirectory\sample directory1
D:\ExampleDirectory\sample directory2
D:\ExampleDirectory\sample directory3
D:\ExampleDirectory\sample directory4

예시

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.stream.Stream;
public class ListOfFiles {
   public static void main(String[] args) throws IOException {
      Stream<Path> path = Files.walk(Paths.get("D:\\ExampleDirectory"));
      path = path.filter(Files::isDirectory);
      path.forEach(System.out::println);
    }
}

출력

D:\ExampleDirectory
D:\ExampleDirectory\sample directory1
D:\ExampleDirectory\sample directory2
D:\ExampleDirectory\sample directory3
D:\ExampleDirectory\sample directory4