/폴더읽기 위한 파일
import java.io.File;
import java.util.Arrays;
import java.util.Date;
import java.io.File;
import java.util.Comparator;
public class testSort{
public static void main(String args[]){
//폴더명 세팅
String folder="D:\\send";
//폴더명으로 파일객체 생성
File file=new File(folder);
//폴더명의 폴더가 없다면 종료
if(!file.isDirectory()){
System.out.println("해당디렉토리는 존재하지 않습니다");
System.exit(1);
}
//폴더라면 폴더가 가진 파일객체를 리스트로 받는다.
File[] list=file.listFiles();
//ModifiedDate클래스에 정의된 순서에 의해 정렬한다.
Arrays.sort(list,new ModifiedDate());
//리스트에서 파일을 하나씩 꺼낸다
for(File f:list){
//파일일 경우만 출력
if(f.isFile()){
//날짜 출력을 위한 Date객체 생성 생성자로 마지막 수정날짜인 lastModified메소드의 long리턴값을 넣는다.
Date d=new Date(f.lastModified());
//파일명, 날짜, 크기를 출력한다.
System.out.println(f.getName()+"\t"+d.toString()+"\t"+f.length());
}
}
}
}
//Arrays.sort()메소드에 사용하기 위해 Comparator인터페이스 구현, 비교하는 객체는 File객체
class ModifiedDate implements Comparator<File>{
public int compare(File f1, File f2) {
//수정날짜의 값이 더크면 -1리턴, -1을 리턴하면 첫번째것이 앞으로 간다.
if(f1.lastModified()>f2.lastModified())
return 1;
//같으면 0
if(f1.lastModified()==f2.lastModified())
return 0;
//작으면 1
return -1;
}
}
이걸로 잘 해결 되어야 할텐데...쩝...
import java.io.File;
import java.util.Arrays;
import java.util.Date;
import java.io.File;
import java.util.Comparator;
public class testSort{
public static void main(String args[]){
//폴더명 세팅
String folder="D:\\send";
//폴더명으로 파일객체 생성
File file=new File(folder);
//폴더명의 폴더가 없다면 종료
if(!file.isDirectory()){
System.out.println("해당디렉토리는 존재하지 않습니다");
System.exit(1);
}
//폴더라면 폴더가 가진 파일객체를 리스트로 받는다.
File[] list=file.listFiles();
//ModifiedDate클래스에 정의된 순서에 의해 정렬한다.
Arrays.sort(list,new ModifiedDate());
//리스트에서 파일을 하나씩 꺼낸다
for(File f:list){
//파일일 경우만 출력
if(f.isFile()){
//날짜 출력을 위한 Date객체 생성 생성자로 마지막 수정날짜인 lastModified메소드의 long리턴값을 넣는다.
Date d=new Date(f.lastModified());
//파일명, 날짜, 크기를 출력한다.
System.out.println(f.getName()+"\t"+d.toString()+"\t"+f.length());
}
}
}
}
//Arrays.sort()메소드에 사용하기 위해 Comparator인터페이스 구현, 비교하는 객체는 File객체
class ModifiedDate implements Comparator<File>{
public int compare(File f1, File f2) {
//수정날짜의 값이 더크면 -1리턴, -1을 리턴하면 첫번째것이 앞으로 간다.
if(f1.lastModified()>f2.lastModified())
return 1;
//같으면 0
if(f1.lastModified()==f2.lastModified())
return 0;
//작으면 1
return -1;
}
}
이걸로 잘 해결 되어야 할텐데...쩝...
'나의 창고 > JAVA' 카테고리의 다른 글
오라클 테이블 만들기 (0) | 2009.09.04 |
---|---|
JAVA 파일 읽을 때 필터링 (0) | 2009.08.10 |
JAVA 스레드 (0) | 2009.08.09 |
JAVA e.printStackTrace() (0) | 2009.07.27 |
JDBC connectionPoll (0) | 2009.07.24 |