1. 先用 list() 取得該目錄裡的所有檔案和子目錄
2. 用 isFile() 檢查是否為檔案或用 isDirectory() 檢查是否為目錄
其中 list() 與 listFiles() 差別,在於list()只會列出檔名,listFiles()會將完整的路徑和檔名顯示出來
import java.io.File;
import java.lang.SecurityException;
class FileT {
public static void main(String args[]) {
String path = "C:\\temp\\";
File fd = new File(path);
try {
File f;
String fileNames[] = fd.list();
System.out.println("總共有"+fileNames.length+"個檔案");
for (int i=0; i<fileNames.length; i++) {
f = new File(path + fileNames[i]);
if (f.isFile()) {
System.out.println("File="+fileNames[i]);
}
if (f.isDirectory()) {
System.out.println("Dir="+fileNames[i]);
}
}
File[] files = fd.listFiles();
for (int i=0;i<files.length;i++) {
if (files[i].isFile()) {
System.out.println("File="+files[i]);
}
if (files[i].isDirectory()) {
System.out.println("Dir="+files[i]);
}
}
} catch(SecurityException e){
System.out.println(e.getMessage());
}
}
}
結果顯示:File1
File2
File3
C:\temp\File1
C:\temp\File2
C:\temp\File3
沒有留言:
張貼留言