Java를 사용하여 얼마나 많은 디스크 공간이 남아 있는지 찾는 방법은 무엇입니까?
문제
Java를 사용하여 얼마나 많은 디스크 공간이 남아 있는지 찾는 방법은 무엇입니까?
해결책
파일 클래스 만보십시오 선적 서류 비치. 이것은 1.6의 새로운 기능 중 하나입니다.
이 새로운 방법에는 다음이 포함됩니다.
public long getTotalSpace()
public long getFreeSpace()
public long getUsableSpace()
여전히 1.5를 사용하고 있다면 아파치 커먼즈 IO 도서관과 그 파일 시스템 클래스
다른 팁
Java 1.7은 약간 다른 API를 가지고 있으며, 여유 공간은 Filestore The 클래스 getTotalSpace (), getUnallocatedSpace () 그리고 getUsableSpace () 행동 양식.
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를 사용하십시오.
예를 들어
FileSystemUtils.freeSpaceKb("/");
또는 JDK에 내장 :
http://java.sun.com/javase/6/docs/api/java/io/file.html#getfreespace ()
new File("/").getFreeSpace();
당신이 Java 프로그래머라면, 당신은 이미이 간단한 stupide 질문을 받았을 것입니다 :“내 시스템에 남은 무료 디스크 공간을 찾는 방법은 무엇입니까?”. 문제는 대답이 시스템 의존적이라는 것입니다. 실제로 시스템 의존하는 구현입니다. 그리고 최근까지 1997 년 6 월부터 Sun의 버그 데이터베이스에 필요성이 필요했지만이 질문에 대답 할 수있는 고유 한 솔루션은 없었습니다. 이제 클래스 파일의 메소드와 함께 Java 6에서 무료 디스크 공간을 얻을 수 있습니다. 추상 경로 이름으로 이름이 지정된 파티션에서 할당되지 않은 바이트의 수를 반환합니다. 그러나 사용 가능한 디스크 공간 (쓰기 가능한)에 관심이있을 수 있습니다. getTotalSpace () 메소드를 사용하여 파티션의 총 디스크 공간을 얻을 수도 있습니다.
Java를 사용하여 디스크 공간을 확인하면 java.io 파일 클래스에 다음 방법이 있습니다.
- getTotalSpace ()
- getfreespace ()
필요한 정보를 얻는 데 도움이 될 것입니다. 예를 들어 참조 할 수 있습니다 http://javatutorialhq.com/java/example-source-code/io/file/check-disk-pace-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());
}
}
디스크 스페이스를 얻으려면이 코드를 시도하십시오