본문 바로가기

명사 美 비격식 (무리 중에서) 아주 뛰어난[눈에 띄는] 사람[것]

JAVA

[File 입출력 - 메서드] canRead() canWrite() canExecute() compareTo() exists() isAbsolute() isDirectory() isFile() isHidden() createNewFile() createTempFile() createTempFile() delete() deleteOnExit() equals() lastModified() length() list() listFile..

 

 

boolean canRead()
파일을 읽을 수 있는지 여부를 반환합니다. (읽을 수 있으면 true, 그렇지 않으면 false)

File file = new File("example.txt");
System.out.println(file.canRead());

[출력 결과]
true 또는 false

 

boolean canWrite()
파일에 쓸 수 있는지 여부를 반환합니다. (쓸 수 있으면 true, 그렇지 않으면 false)

File file = new File("example.txt");
System.out.println(file.canWrite());


[출력 결과]
true 또는 false

 

 

boolean canExecute()
파일을 실행할 수 있는지 여부를 반환합니다. (실행할 수 있으면 true, 그렇지 않으면 false)

File file = new File("example.txt");
System.out.println(file.canExecute());


[출력 결과]
true 또는 false

 

 

 

int compareTo(File pathname)
주어진 파일의 경로명을 기준으로 파일을 비교합니다. (같으면 0, 주어진 파일이 더 작으면 음수, 더 크면 양수 반환)

import java.io.File;

public class FileComparison {
    public static void main(String[] args) {
        File file1 = new File("example1.txt");
        File file2 = new File("example2.txt");
        
        int result = file1.compareTo(file2);
        if (result == 0) {
            System.out.println("파일 이름이 동일합니다.");
        } else if (result < 0) {
            System.out.println("file1이 file2보다 사전순으로 먼저 옵니다.");
        } else {
            System.out.println("file2가 file1보다 사전순으로 먼저 옵니다.");
        }
    }
}

[출력결과]
file1이 file2보다 사전순으로 먼저 옵니다.

 

 

 

boolean exists()
파일이나 디렉터리가 실제로 존재하는지 여부를 반환합니다. (존재하면 true, 그렇지 않으면 false)

File file = new File("example.txt");
System.out.println(file.exists());


[출력 결과]
true 또는 false

 

 

boolean isAbsolute()
파일의 경로가 절대 경로인지 여부를 반환합니다. (절대 경로이면 true, 상대 경로이면 false)

File file = new File("C:/example.txt");
System.out.println(file.isAbsolute());


[출력 결과]
true 또는 false

 

 

boolean isDirectory()
파일이 디렉터리인지 여부를 반환합니다. (디렉터리이면 true, 그렇지 않으면 false)

File directory = new File("example_directory");
System.out.println(directory.isDirectory());


[출력 결과]
true 또는 false

 

 

boolean isFile()
파일이 일반 파일인지 여부를 반환합니다. (일반 파일이면 true, 그렇지 않으면 false)

File file = new File("example.txt");
System.out.println(file.isFile());


[출력 결과]
true 또는 false

 

 

 

boolean isHidden()
파일이 숨겨진 파일인지 여부를 반환합니다. (숨겨진 파일이면 true, 그렇지 않으면 false)

File file = new File("example.txt");
System.out.println(file.isHidden());


[출력 결과]
true 또는 false

 

 

boolean createNewFile()
새 파일을 생성합니다. 파일이 이미 존재하거나 생성에 실패하면 false를 반환합니다. (성공적으로 생성되면 true)

 File file = new File("newfile.txt");
 System.out.println(file.createNewFile());
 

 [출력 결과]
 true 또는 false

 

 

static File createTempFile(String prefix, String suffix)
임시 파일을 생성합니다. 지정된 접두사와 접미사를 사용하여 파일 이름을 생성하고 해당 파일의 File 객체를 반환합니다.

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

public class TempFileExample {
    public static void main(String[] args) {
        try {
            File tempFile = File.createTempFile("temp", ".txt");
            System.out.println("임시 파일의 이름: " + tempFile.getName());
        } catch (IOException e) {
            System.out.println("임시 파일을 생성하는 도중에 오류가 발생했습니다.");
            e.printStackTrace();
        }
    }
}

[출력결과]
임시 파일의 이름: temp1234567890123456789.txt

 

 

static File createTempFile(String prefix, String suffix, File directory)
지정된 디렉터리에 임시 파일을 생성합니다. 접두사와 접미사를 사용하여 파일 이름을 생성하고 해당 파일의 File 객체를 반환합니다.

 File tempFile = File.createTempFile("temp", ".txt", new File("temp_dir"));
 System.out.println(tempFile.getName());
 

 [출력 결과]
 임시 파일의 이름

 

 

 

boolean delete()
파일 또는 디렉터리를 삭제합니다. 삭제에 성공하면 true를 반환합니다. (삭제에 실패하거나 파일이 존재하지 않으면 false)

 File file = new File("example.txt");
 System.out.println(file.delete());
 

 [출력 결과]
 true 또는 false

 

 

void deleteOnExit()
프로그램 종료 시 파일 또는 디렉터리를 삭제하도록 지정합니다.

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

public class DeleteOnExitExample {
    public static void main(String[] args) {
        // 파일 생성
        // 프로그램이 실행될 때 "example.txt" 파일을 생성
        File file = new File("example.txt");

        try {
            // 파일에 내용 작성
            // 안에 "This is an example file."이라는 내용을 씀
            FileWriter writer = new FileWriter(file);
            writer.write("This is an example file.");
            writer.close();
        } catch (IOException e) {
            System.out.println("파일을 생성하는 도중에 오류가 발생했습니다.");
            e.printStackTrace();
        }

        // 프로그램 종료 시 파일 삭제 지정
        // 프로그램이 종료되면 파일이 자동으로 삭제
        file.deleteOnExit();

        // 프로그램이 종료되면서 파일이 삭제됨
    }
}

 

 

boolean equals(Object obj)
다른 객체와 현재 파일을 비교하여 같은지 여부를 반환합니다. (같으면 true, 그렇지 않으면 false)

 File file1 = new File("example.txt");
 File file2 = new File("example.txt");
 System.out.println(file1.equals(file2));
 

 [출력 결과]
 true 또는 false

 

 


long lastModified()
파일의 마지막 수정 시간을 반환합니다. 시간은 1970년 1월 1일 자정 이후의 밀리초 단위로 표시됩니다.

 File file = new File("example.txt");
 System.out.println(file.lastModified());
 

 [출력 결과]
 파일의 마지막 수정 시간

 

 

long length()
파일의 크기를 바이트 단위로 반환합니다.

 File file = new File("example.txt");
 System.out.println(file.length());
 

 [출력 결과]
 파일의 크기

 

 

String[] list()
디렉터리 내의 파일 및 디렉터리 목록을 문자열 배열로 반환합니다.

 File directory = new File("example_directory");
 String[] fileList = directory.list();
 for (String name 
 fileList) {
  System.out.println(name);
 }
 

 [출력 결과]
 디렉터리 내의 파일 및 디렉터리 목록

 

 

String[] list(FilenameFilter filter)
지정된 필터를 사용하여 디렉터리 내의 파일 및 디렉터리 목록을 문자열 배열로 반환합니다.

 File directory = new File("example_directory");
 String[] fileList = directory.list((dir, name) -> name.endsWith(".txt"));
 for (String name fileList) {
  System.out.println(name);
 }
 
  [출력 결과]
 .txt 필터 조건에 맞는 디렉터리 내의 파일 및 디렉터리 목록

 

 

File[] listFiles()
디렉터리 내의 파일 및 디렉터리를 나타내는 File 객체의 배열을 반환합니다.

 
 File directory = new File("example_directory");
 File[] fileList = directory.listFiles();
 for (File file 
 fileList) {
  System.out.println(file.getName());
 }
 

 [출력 결과]
 디렉터리 내의 파일 및 디렉터리 목록

 

 


static File[] listRoots()
시스템의 모든 루트 디렉터리를 나타내는 File 객체의 배열을 반환합니다.

 File[] roots = File.listRoots();
 for (File root 
 roots) {
  System.out.println(root.getAbsolutePath());
 }
 

 [출력 결과]
 시스템의 모든 루트 디렉터리 목록

 

 

 

 

long getFreeSpace()
파일이나 디렉터리가 존재하는 파티션에서 사용 가능한 바이트 수를 반환합니다.

 File file = new File("example.txt");
 System.out.println(file.getFreeSpace());
 

 [출력 결과]
 사용 가능한 바이트 수

 

 

 

long getTotalSpace()
파일이나 디렉터리가 존재하는 파티션의 총 바이트 수를 반환합니다.

 File file = new File("example.txt");
 System.out.println(file.getTotalSpace());
 

 [출력 결과]
 총 바이트 수

 

 

 

long getUsableSpace()
파일이나 디렉터리가 존재하는 파티션에서 사용 가능한 바이트 수를 반환합니다.

 File file = new File("example.txt");
 System.out.println(file.getUsableSpace());
 

 [출력 결과]
 사용 가능한 바이트 수

 

 

 

boolean mkdir()
디렉터리를 생성합니다. 부모 디렉터리가 존재하지 않거나 디렉터리를 생성할 수 없는 경우에는 false를 반환합니다.

 
 File directory = new File("new_directory");
 System.out.println(directory.mkdir());
 

 [출력 결과]
 true 또는 false

 

 

 


boolean mkdirs()
디렉터리를 생성합니다. 필요한 부모 디렉터리를 모두 생성하고, 디렉터리를 생성할 수 없는 경우에도 false를 반환합니다.

 File directory = new File("new_directory/sub_directory");
 System.out.println(directory.mkdirs());
 

 [출력 결과]
 true 또는 false

 

 

 

boolean renameTo(File dest)
파일 또는 디렉터리의 이름을 변경합니다. 성공하면 true를 반환합니다.

 File file = new File("example.txt");
 File renamedFile = new File("renamed_example.txt");
 System.out.println(file.renameTo(renamedFile));
 

 [출력 결과]
 true 또는 false

 

 

boolean setExecutable(boolean executable)
파일을 실행 가능하게 설정합니다.

 File file = new File("example.txt");
 System.out.println(file.setExecutable(true));
 

 [출력 결과]
 true 또는 false

 

 

 

boolean setExecutable(boolean executable, boolean ownerOnly)
파일의 실행 권한을 설정합니다. ownerOnly가 true이면 소유자만 변경할 수 있습니다.

 File file = new File("example.txt");
 System.out.println(file.setExecutable(true, false));
 

 [출력 결과]
 true 또는 false

* Java 프로그램을 실행하기 위해 Java 소스 코드를 컴파일하여 생성된 `.class` 파일에 실행 가능한 권한을 부여하면 운영 체제가 해당 파일을 실행할 수 있습니다.
따라서 `setExecutable(true)`을 호출하면 해당 파일을 실행 가능한 파일로 설정하고, 

`setExecutable(false)`를 호출하면 실행 가능한 권한을 제거하여 파일을 실행할 수 없게 됩니다. 

 

 

boolean setReadable(boolean readable)
파일을 읽기 가능하게 설정합니다.

 
 File file = new File("example.txt");
 System.out.println(file.setReadable(true));
 

 [출력 결과]
 true 또는 false

 

 

 

boolean setReadable(boolean readable, boolean ownerOnly)
파일의 읽기 권한을 설정합니다. ownerOnly가 true이면 소유자만 변경할 수 있습니다.

 File file = new File("example.txt");
 System.out.println(file.setReadable(true, false));
 

 [출력 결과]
 true 또는 false



boolean setReadOnly()
파일을 읽기 전용으로 설정합니다.

 File file = new File("example.txt");
 System.out.println(file.setReadOnly());
 

 [출력 결과]
 true 또는 false

 

 

 

boolean setWritable(boolean writable)
파일을 쓰기 가능하게 설정합니다.

 File file = new File("example.txt");
 System.out.println(file.setWritable(true));
 

 [출력 결과]
 true 또는 false

 

 

 

boolean setWritable(boolean writable, boolean ownerOnly)
파일의 쓰기 권한을 설정합니다. ownerOnly가 true이면 소유자만 변경할 수 있습니다.

 File file = new File("example.txt");
 System.out.println(file.setWritable(true, false));
 

 [출력 결과]
 true 또는 false

 

 

 

boolean setLastModified(long time)
파일의 마지막 수정 시간을 설정합니다. 시간은 1970년 1월 1일 자정 이후의 밀리초 단위로 지정됩니다.

 File file = new File("example.txt");
 long timeInMillis = System.currentTimeMillis();
 System.out.println(file.setLastModified(timeInMillis));
 

 [출력 결과]
 true 또는 false

 

 

 

Path toPath()
파일의 경로를 나타내는 Path 객체를 반환합니다.

 
 File file = new File("example.txt");
 Path path = file.toPath();
 System.out.println(path);
 

 [출력 결과]
 파일의 경로를 나타내는 문자열

 

 

 

URI toURI()
파일의 경로를 나타내는 URI 객체를 반환합니다.

 
 File file = new File("example.txt");
 URI uri = file.toURI();
 System.out.println(uri);
 

 [출력 결과]
 파일의 경로를 나타내는 URI