자바의정석 Chapter16. 파일


File

자바에서는 File객체를 사용하여 파일과 디렉토리를 다룰 수 있습니다.

File 객체 생성자

생성자 설 명
File(String fileName) 주어진 문자열(fileName)을 이름으로 갖는 파일을 위한 File인스턴스를 생성한다. 파일 뿐만 아니라 디렉토리도 같은 방법으로 다룬다.
File(String pathName, String fileName) 파일의 경로와 이름을 따로 분리해서 지정할 수 있도록 한 생성자.
File(File pathName, String fileName) 파일의 경로와 이름을 따로 분리해서 지정할 수 있도록 한 생성자이며 경로를 문자열이 아닌 File인스턴스인 경우를 위해서 제공된 것이다.
File(URI uri) 지정된 uri로 파일을 생성

File 객체 경로 관련 멤버변수

멤버변수 설 명
static String pathSeparator OS에서 사용하는 경로(path) 구분자. 윈도우 “;”, 유닉스 “:”
static char pathSeparatorChar OS에서 사용하는 경로(path) 구분자. 윈도우에서는 ‘;’, 유닉스 ‘:’
static String separator OS에서 사용하는 이름 구분자. 윈도우 “", 유닉스 “/”
static char separatorChar OS에서 사용하는 이름 구분자. 윈도우 ‘', 유닉스 ‘/’

File 객체 메서드

메서드 설 명
String getName() 파일의 이름을 String으로 반환
String getPath() 파일의 경로를 String으로 반환
String getAbsolutePath() 파일의 절대경로를 String으로 반환
File getAbsoulteFile() 파일의 절대경로를 File로 반환
String getParent() 파일의 조상 디렉토리를 String으로 반환
File getParentFile() 파일의 조상 디렉토리를 File로 반환
String getCanonicalPath() 파일의 정규경로를 String으로 반환
File getCanonicalFile() 파일의 정규경로를 File로 반환
boolean canRead() 읽을 수 있는 파일인지 검사한다.
boolean canWrite() 쓸 수 있는 파일인지 검사한다.
boolean canExecute() 실행할 수 있는 파일인지 검사한다.
int compareTo(File pathname) 지정된 파일(pathname)과 비교하여 같으면 0, 다르면 1 또는 -1을 반환한다.
boolean exists() 파일이 존재하는지 검사한다.
boolean isAbsoute() 파일 또는 디렉토리가 절대경로명으로 지정되었는지 확인한다.
boolean isDirectroy() 디렉토리인지 확인한다.
boolean isFile() 파일인지 확인한다.
boolean isHidden() 파일의 속성이 숨김인지 확인 한다. 또한 파일이 존재하지 않은면 false를 반환한다.
boolean createNewFile() 새로운 파일을 생성한다. 단, 이미 존재하는 파일이면 생성되지 않는다.
static File createTempFile(String prefix, String suffix) 임시파일을 시스템의 임시 디렉토리에 생성한다.
static File createTempFile(String prefix, String suffix, File directory) 임시파일을 시스템의 지정된 디렉토리에 생성한다.
boolean delete() 파일을 삭제한다.
void deleteOnExit() 응용 프로그램 종료시 파일을 삭제한다. 주로 실행 시 작업에 사용된 임시파일을 삭제하는데 사용된다.
boolean equals(Object obj) 주어진 객체가 같은 파일인지 비교한다.
long lastModified() 파일의 마지막 수정시간을 반환한다.
long length() 파일의 크기를 반환한다.
String[] list() 디렉토리를 포함한 파일목록을 String배열로 반환한다.
String[] list(FilenameFilter filter FilenameFile인스턴스에 구현된 조건에 맞는 파일을 String 배열로 반환한다.
File[] list(FilenameFilter filter FilenameFile인스턴스에 구현된 조건에 맞는 파일을 File 배열로 반환한다.
File[] listFiles() 디렉토리의 파일 목록을 File배열로 반환한다.
File[] listFiles(FileFilter filter) filter와 일치하는 디렉토리의 파일 목록의 파일을 반환한다.
File[] listFiles(FilenameFilter f) 위와 동일하다.
static File[] listRoots() 컴퓨터의 시스템의 root의 목록을 반환한다.
long getFreeSpace() File이 root일 때 비어있는 공간을 바이트 단위로 반환한다.
long getTotalSpace() File이 root일 때 전체 공간을 바이트 단위로 반환한다.
long getUsableSpace() File이 root일 때 사용가능한 공간을 바이트 단위로 반환한다.
boolean mkdir() 파일에 지정된 경로로 디렉토리를 생성하고 성공 시 true를 반환한다.
boolean mkdirs() 파일에 지정된 경로의 디렉토리 및 부모 디렉토리까지 생성하고 성공 시 true를 반환한다.
boolean renameTo(File dest) 지정된 파일(dest)로 이름을 변경한다.
boolean setExecuteable(boolean executeable) 파일의 속성을 변경한다. OwnerOnly가 true이면 파일의 소유자만 해당 속성을 변경할 수 있다.
boolean setExecuteable(boolean executeable, boolean ownerOnly) 위와 동일
boolean setReadable(boolean readable) 위와 동일
boolean setReadable(boolean readable, boolean ownerOnly) 위와 동일
boolean setReadOnly() 위와 동일
boolean setWritable(boolean writable) 위와 동일
boolean setWritable(boolean writable, boolean ownerOnly) 위와 동일
boolean setLastModified(long t) 파일의 마지막으로 수정된 시간을 지정된 시간(t)으로 변경한다.
Path toPath() 파일을 Path로 변환하고 반환한다.
URI toURI() 파일을 URI로 변환하고 반환한다.

absoulte path, canonical path

  • 파일의 절대경로(absolute path) 는 파일시스템의 루트로부터 시작하는 파일의 전체 경로를 의미합니다.
  • 파일의 정규경로(canonical path) 는 기호나 링크 등을 포함하지 않는 유일한 경로를 의미합니다.

Reference

자바의 정석

태그:

카테고리:

업데이트:

댓글남기기