본문 바로가기
JAVA/기초

[JAVA] file 관련 메서드 & 함수

by 뿌비 2022. 8. 24.
728x90
우선 import java.io.File; 로 import를 한다.

exists 

  • 파일이 존재하는지 여부를 알 수 있다.
  • 반환 결과가 boolean으로 파일이 존재하면 참, 없으면 거짓을 반환한다.
File f = new File("C://test/a.txt");
if(f.exists()) {
     System.out.println("파일 존재"); // true
} else {
      System.out.println("파일 없음"); // false        
}

length

  • file의 사이즈를 측정하는 함수이며 바이트 사이즈 크기를 변수 타입 long으로 반환한다.
File f = new File("C://test/a.txt");
    if(f.exists()) {
        long len = f.length();
        System.out.println("file Size : " + len);
    } else {
        System.out.println("파일 없음");            
    }

isFile

  • 파일인지를 검사하는 함수이며 파일이 존재하지 않거나 디렉터리이면 false를 반환하고 파일이면 true 반환한다.
File f = new File("C://test/");
    if(f.isFile()) {
        System.out.println("파일");  
    } else {
        System.out.println("파일이 아님");            
    }

isDirectory

  • 디렉터리인지를 검사하는 함수이며 디렉터리이면 true를 반환하고 파일이거나 존재하지 않으면 false를 반환한다.
File f = new File("C://test/");
    if(f.isDirectory()) {
        System.out.println("디랙토리");  
    } else {
        System.out.println("디랙토리 아님");            
    }

isHidden

  • 숨김 파일인지를 검사하는 함수이며 파일이나 디렉터리가 숨김으로 되어있으면 true를 반환하고 아니면 false를 반환한다.
File f = new File("C://test/a.txt");
if(f.isHidden()) {
    System.out.println("숨겨진 파일");  
} else {
    System.out.println("숨겨진 파일이 아님");            
}

getName

  • 파일에 이름을 반환하는 함수이며 앞에 파일 경로를 제외하고 파일 이름만 String 타입으로 반환한다.
File f = new File("C://test/a.txt");
if(f.isFile()) {
    String name = f.getName();
    System.out.println("File Name : " + name);
}

getPath

  • 파일의 전체 경로와 이름을 반환하는 함수이다.
File f = new File("C://test/a.txt");
if(f.exists()) {
   String path = f.getPath();
   System.out.println("File Path : " + path);
}

listFiles

  • 해당 디렉터리 아래 어떤 파일이나 디렉터리들이 있는지를 반환하는 함수이며 File배열로 반환한다.
// 아래 예제를 보면 C://test/ 디렉토리 아래에 있는 모든 파일과 디렉토리를 반환하게 된다.
File f = new File("C://test/");
if(f.isDirectory()) {
    File[] fList = f.listFiles();
    for(int i=0; i < fList.length; i++)
        System.out.println(fList[i].getName());
}

mkdir

  • 디렉터리 만들기 함수이며 아래 예제대로면 C://test/test2로 test2 디렉터리를 를 만들게 된다.
  • 그러나 C://test 폴더가 존재하지 않으면 실패하게 되는데 이럴 땐 mkdirs을 사용해야 한다.
  • 결과로 성공 여부를 boolean을 반환한다.
File f = new File("C://test/test2");
boolean result = f.mkdir();
if(result)
   System.out.println("디렉토리 만들기 성공");
else
   System.out.println("디렉토리 만들기 실패");

mkdirs

  • 위의 9번 mkdir과 거의 같은 기능을 하지만 C://test/test2에서 상위 폴더들이 없으면 상위 폴더들까지 만들게 된다.
File f = new File("C://test/test2");
boolean result = f.mkdirs();
if(result)
   System.out.println("디렉토리 만들기 성공");
else
   System.out.println("디렉토리 만들기 실패");
728x90