用java列出系統磁碟分割和C盤根目錄
package com.limeteor.demo;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* File類
* @author limeteor
*
*/
public class FileDemo {
public static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
public static void main(String[] args) {
//擷取當前檔案系統的所有磁碟分割
File[] disks = File.listRoots();
System.out.println("系統磁碟分割情況:");
for (int i = 0; i < disks.length; i++) {
File disk = disks[i];
System.out.println(disk.getAbsolutePath()+"盤\t總空間:"
+disk.getTotalSpace()/1024/1024/1024+"G\t剩餘空間"
+disk.getFreeSpace()/1024/1024/1024+"G");
}
//擷取C盤根目錄
File c = new File("C:");
if (!c.exists()) {
System.out.println("未發現C盤");
return;
}
System.out.println("C盤根目錄結構:");
File[] files = c.listFiles();
for (int i = 0; i < files.length; i++) {
File file = files[i];
if (file.isDirectory()) {
System.out.println("[目錄]"+file.getName());
}
if (file.isFile()) {
System.out.println("[檔案]"+file.getName());
System.out.println("\t大小"+file.length()/1024+"K");
Date date = new Date(file.lastModified());
System.out.println("\t修改日期"+sdf.format(date)+"\t");
if (file.isHidden()) {
System.out.println("[隱藏]");
}
if (!file.canWrite()) {
System.out.println("[唯讀]");
}
System.out.println();
}
}
}
}
使用的知識點說明
1.File類在java.io包中,使用前需要引用此包
2.File類的listModified方法返回的是自1970年1月1日至今的毫秒數,需要先轉換為Date類型再格式化輸出。