java.io.File을 이용한 디렉토리와 파일 검색(call back)
프로젝트 수행중 간단하게 workspace 안의 파일 목록이 필요하여 간단하게 파일 검색하는 콜백 함수를 만들어 보았다;; 검색 및 출력은 제대로 되는데 검증은... ?
import java.io.File;
class FileSearch
{
public static void main(String[] args)
{
printFiles(new File("C:/"));
}
// 파일을 매개 변수로 받는 메소드
public static void printFiles(File f)
{
// 매개변수가 디렉토리 일경우
if(f.isDirectory())
{
String[] s = f.list(); // 디렉토리 내의 모든 파일의 list를 확인
// 파일 목록에서 디렉토리일 경우
//printFiles 메소드 호출 그리고 파일일 경우 단순 출력을 수행
for(int i=0; i<s.length;i++)
{
File f1 = new File(f.getPath() + "/" + s[i]);
if(f1.isDirectory())
{
System.out.println(f1);
printFiles(f1);
}
else
{
System.out.println("isFile " + f1.getPath() + "\t" + f1.getName());
}
}
}
else
{
System.out.println("파일이지요~ " + f.getName());
}
}
}