用java实现对某个磁盘下的一个具体文件夹,打印其文件结构(包括其子文件的结构),代码实现如下:FileTree.java
改代码以 D盘的 360 文件夹为例子,可以打印出该文件夹下所有的文件(包括隐藏的文件)。
package j2se.xmh.file;
import java.io.File;
public class FileTree {
/**用树状结构打印出文件结构来
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
File f = new File("D:/360");
System.out.println(f.getName()); //输出文件的名字
tree(f,1);//1用来在根目录前打印空格
}
/**此方法用递归的方法,以树状形式打印文件层次
* @param f 文件的名字
* @param level 文件的层次
* @param level
*/
private static void tree(File f,int level){ //level表示文件的层次String preStr = ""; //用来输出层次之间的空格的
for(int i=0;ipreStr = preStr + " ";
}
File[] childs = f.listFiles();//列出给文件的子目录
for(int i=0;iif(childs[i].isDirectory()){ //如果子目录还是目录则递归打印,此时层次 + 1
tree(childs[i],level + 1);
}
}
}
}
文件的结构如下: