Program Tip

Java를 사용하여 남은 디스크 공간을 찾는 방법은 무엇입니까?

programtip 2020. 12. 6. 22:01
반응형

Java를 사용하여 남은 디스크 공간을 찾는 방법은 무엇입니까?


Java를 사용하여 남은 디스크 공간을 찾는 방법은 무엇입니까?


File 클래스 문서를 살펴보십시오 . 이것은 1.6의 새로운 기능 중 하나입니다.

이러한 새로운 방법에는 다음이 포함됩니다.

  • public long getTotalSpace()
  • public long getFreeSpace()
  • public long getUsableSpace()

여전히 1.5를 사용하고 있다면 Apache Commons IO 라이브러리와 FileSystem 클래스를 사용할 수 있습니다.


Java 1.7에는 약간 다른 API가 있으며 여유 공간은 getTotalSpace () , getUnallocatedSpace ()getUsableSpace () 메소드를 통해 FileStore 클래스를 통해 쿼리 할 수 ​​있습니다 .

NumberFormat nf = NumberFormat.getNumberInstance();
for (Path root : FileSystems.getDefault().getRootDirectories()) {

    System.out.print(root + ": ");
    try {
        FileStore store = Files.getFileStore(root);
        System.out.println("available=" + nf.format(store.getUsableSpace())
                            + ", total=" + nf.format(store.getTotalSpace()));
    } catch (IOException e) {
        System.out.println("error querying space: " + e.toString());
    }
}

이 API의 장점은 디스크 공간 쿼리가 실패 할 때 의미있는 예외가 반환된다는 것입니다.


CommonsIO 및 FilesystemUtils 사용 :

https://commons.apache.org/proper/commons-io/javadocs/api-2.5/org/apache/commons/io/FileSystemUtils.html#freeSpaceKb ()

예 :

FileSystemUtils.freeSpaceKb("/"); 

또는 JDK에 내장 :

http://java.sun.com/javase/6/docs/api/java/io/File.html#getFreeSpace ()

new File("/").getFreeSpace();

링크

Java 프로그래머라면 이미 "내 시스템에 남아있는 여유 디스크 공간을 찾는 방법"이라는 간단하고 어리석은 질문을 받았을 것입니다. 문제는 대답이 시스템에 따라 다르다는 것입니다. 실제로 시스템에 따라 달라지는 구현입니다. 그리고 1997 년 6 월부터 Sun의 버그 데이터베이스에 필요가 기록되었지만 최근까지이 질문에 답할 수있는 고유 한 해결책이 없었습니다. 이제 File 클래스의 메소드를 사용하여 Java 6에서 여유 디스크 공간을 얻을 수 있습니다. 추상 경로 이름으로 명명 된 파티션의 할당되지 않은 바이트 수를 반환합니다. 그러나 사용 가능한 디스크 공간 (쓰기 가능한 공간)에 관심이있을 수 있습니다. getTotalSpace () 메소드를 사용하여 파티션의 전체 디스크 공간을 가져올 수도 있습니다.


java를 사용하여 디스크 공간을 확인하면 java.io File 클래스에 다음 메소드가 있습니다.

  • getTotalSpace ()
  • getFreeSpace ()

필요한 정보를 얻는 데 확실히 도움이 될 것입니다. 예를 들어 http://javatutorialhq.com/java/example-source-code/io/file/check-disk-space-java/참조하면 이러한 방법을 사용하는 구체적인 예를 볼 수 있습니다.


public class MemoryStatus{  
 public static void main(String args[])throws Exception{  
  Runtime r=Runtime.getRuntime();  
  System.out.println("Total Memory: "+r.totalMemory());  
  System.out.println("Free Memory: "+r.freeMemory());    
 }
}

이 코드를 사용하여 디스크 공간을 얻으십시오.

참고 URL : https://stackoverflow.com/questions/1051295/how-to-find-how-much-disk-space-is-left-using-java

반응형