package question4;
import java.io.File;
/*
* 編寫一個程序,當用戶輸入一個目錄時,
* 該程序能列出該目錄下的所有子目錄和文件。
*/
public class ViewFolder
{
public static void main(String[] args)
{
//輸出整個項目文件下的所有子文件夾和文件
String path = System.getProperty("user.dir");
System.out.println(path);
View(path,table);
}
/**
* 用來格式化輸出的製表符
*/
public static final String table = "|--";
/**
* 輸出目錄結構到控制檯
*/
public static void View(String srcPath, String table)
{
File srcFile = new File(srcPath);
//如果給定的源路徑是文件夾
if(srcFile.isDirectory())
{
//如果是文件夾的話,路徑需要增加一個斜槓,
//用File.getpath可以避免輸入的路徑有斜槓
//和沒有斜槓導致的一些問題
srcPath = srcFile.getPath()+File.separator;
System.out.println(table + srcFile.getName());
//遍歷整個文件夾下的所有文件和子文件,
//並通過遞歸調用自己實現目錄的輸出
String[] fileList = srcFile.list();
for (String fileName : fileList)
{
View(srcPath+fileName, table+ViewFolder.table);
}
}
//如果給定的源路徑是文件
else if(srcFile.isFile())
{
System.out.println(table + srcFile.getName());
}
}
}
顯示指定目錄的目錄結構
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.