File객체는 하드디스크에 존재하는 실제 파일을 뜻하는 것이 아니다.
File객체는 그 파일에 대한 경로/참조 를 추상화한 객체로 파일 객체는 새 파일에 대한 경로나 만들고자 하는 디렉토리를 캡슐화 하는 것이다.
주 용도는 물리적 파일 시스템에 대해 캡슐화한 경로명을 확인하고 실제의 파일이나 디렉토리와 일치하는지 알아볼 때 주로 사용한다.
File 객체 생성
File file = new File("경로"); : String타입으로 필수 값이다. File file2 = new File("폴더명", "파일명"); : 폴더명 하위 파일을 지칭한다.
File(" ") 안에는 경로 또는 파일명을 넣어줄 수 있다.
File 객체 정보 얻기
file.getName(); : 폴더/파일 각각 경우에 따라 이름을 String으로 반환. file.isDirectory(); : 폴더인지 boolean으로 반환 file.isFile(); : 파일인지 boolean으로 반환 file.getPath(); : 파일/폴더 이름을 포함한 File객체의 경로를 String으로 반환 file.getAbsolutePath(); : 파일의 절대경로를 String으로 반환 file.length(); : 파일의 크기를 int로 반환 바이트로 표현 file.list(); : 폴더의 경우에만 해당 폴더와 하위 폴더의 경로를 String배열화하여 리턴한다. file.listFiles(); :폴더의 경우에만 해당 폴더와 하위 폴더의 경로를 File타입으로 배열화하여 리턴한다.
File 객체로 테스트하기
file.exist(); : File객체가 참조하는 것이 실존하면 true를 반환 file.isHidden(); : File객체가 지정한 경로의 파일이 숨김파일이면 true를 반환 file.canRead(); : File객체가 지정한 경로의 파일을 읽기권환이 있다면 true를 반환 file.canWrite(); : File객체가 지정한 경로의 파일을 쓰기권환이 있다면 true를 반환
File 객체 경로 파일 만들기
- 예제
File file = new File("D:/user/연습용"); if(!file.exists()){ file.mkdir(); }
file객체의 마지막 폴더인 연습용이 없다면 mkdir메서드를 통해 만들어준다.
- mkdirs() 를 사용한다면 중간경로의 파일도 만들어 줄 수 있다.