package test.filelist;

import java.io.File;
import java.io.IOException;

public class FileReader {
public static void main(String[] args) {
String path = "C:/kesti/koofs_org";
readFiles(new File(path));
}

public static void readFiles(File file) {
if (file == null || !file.exists()) {
return;
}

if (file.isDirectory()) {
String[] files = file.list();
String path = "";
try {
path = file.getCanonicalPath();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(path);

if (files != null) {
for (int i = 0; i < files.length; i++) {
if (path.indexOf("fckeditor") < 0) {
readFiles(new File(file, files[i]));
}
}
}
} else {
try {
String name = file.getName().toLowerCase();
if(name.endsWith(".jsp") || name.endsWith(".html") || name.endsWith(".js")) {
System.out.println(file.getCanonicalPath());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}


어떤 프로젝트가 되었건 문서화 작업이 없는 경우는 없죠.
하지만 이런 문서 작업을 좋아하는 사람도 없죠. (물론 저도 싫죠)
오늘은 기존 시스템의 프로그램 목록을 작성하는 날입니다.
본수가 많지 않아 타이핑을 하려다 급 귀찮아져서 특정 디렉토리를 읽어오는 프로그램을 잠시 만들었습니다.
재귀호출. 이게 은근히 헷갈립니다.
전에 안드로이드 프로젝트할때 특정 디렉토리의 컨텐츠를 읽어서 (클라우드서버로의) 백업 여부를 판별하는 작업을 할 필요가 있었는데, 그때 작업했던 내용과 유사합니다. 문제는 전혀 기억이 나지 않았다는거.
어쨌거나 간단하게 만들었습니다.
만들고나니... 프로그램 짜길 참 잘했다는 생각이 들더군요. ㅡㅡ^
전체 파일이 3,000개에 가깝고 (물론 이미지가 많았습니다.)
프로그램이다보니 이런 저런 조건을 줘서 필터링하기도 편했습니다.
(예를 들면, 어떤 확장자의 파일들이 있는가? 또는 이미지 파일은 몇개인가? 확장자별 각 파일수는?)

다음엔 간단히 찾아쓰기 위해 포스팅합니다!!
근래 개발 관련 포스팅을 하게되네요.
퇴근시간 두시간전!!
오늘이 초복이랍니다!! 즐닭하시길!!




  1. 탱구 2012.08.09 17:46

    오.. 제가 찾던 정보네요!!