File
하드디스크 정보를 얻을 수 있다.
함수
listRoots() : 파일 시스템 루트의 리스트를 반환한다. (C:\, D:\ ......)
getTotalSpace() : 하드디스크 총 용량
getUsableSpace() : 하드디스크 사용 공간
getFreeSpace() : 남은 용량
- 남은 용량이 사용 공간과 자꾸 똑같이 나와 그냥 총 용량에서 사용공간을 빼버린 값으로 사용했다..ㅠㅠ
소스코드
String drive;
double totalSize, freeSize, useSize;
File[] roots = File.listRoots();
for (File root : roots) {
drive = root.getAbsolutePath();
totalSize = root.getTotalSpace() / Math.pow(1024, 3);
useSize = root.getUsableSpace() / Math.pow(1024, 3);
freeSize = totalSize - useSize;
System.out.println("\n하드 디스크 이름 : " + drive + "\n");
System.out.println("전체 디스크 용량 : " + totalSize + " GB \n");
System.out.println("디스크 사용 용량 : " + freeSize + " GB \n");
System.out.println("디스크 남은 용량 : " + useSize + " GB \n");
}
결과
하드 디스크 이름 : C:\
전체 디스크 용량 : 299.99999618530273 GB
디스크 사용 용량 : 36.1625862121582 GB
디스크 남은 용량 : 263.83740997314453 GB
하드 디스크 이름 : D:\
전체 디스크 용량 : 165.66210556030273 GB
디스크 사용 용량 : 2.611347198486328 GB
디스크 남은 용량 : 163.0507583618164 GB
하드 디스크 이름 : E:\
전체 디스크 용량 : 0.0 GB
디스크 사용 용량 : 0.0 GB
디스크 남은 용량 : 0.0 GB
하드 디스크 이름 : F:\
전체 디스크 용량 : 0.0 GB
디스크 사용 용량 : 0.0 GB
디스크 남은 용량 : 0.0 GB
[출처] [JAVA] File - 하드디스크 정보 보기|작성자 수히