打印一个目录,并以树形结构显示
2014-05-30 11:11
741 查看
import java.io.*; import java.util.*; public class VisualDirectory { private static int times; public static void deepList(File file) { if(file.isFile()||file.listFiles().length==0) {
<span style="white-space:pre"> </span>buffer.append(file.getName()); <span style="white-space:pre"> </span>System.out.println(buffer); <span style="white-space:pre"> </span>return; } else { File[] files=file.listFiles(); files=VisualDirectory.sort(files); for(File fil:files) { StringBuffer buffer=new StringBuffer(); if(fil.isFile()) { buffer.append(VisualDirectory.getTabs(times)); buffer.append(fil.getName()); } else { buffer.append(VisualDirectory.getTabs(times)); buffer.append(fil.getName()); System.out.println(buffer); times++; VisualDirectory.deepList(fil); times--; } } } } public static File[] sort(File[] files) { ArrayList<File> list=new ArrayList<File>(); for(File file:files) { if(file.isDirectory()) { list.add(file); } } for(File file:files) { if(file.isFile()) { list.add(file); } } return list.toArray(new File[files.length]); } public static String getTabs(int times) { StringBuffer str=new StringBuffer(); for(int i=0;i<times;i++) { str.append("\t"); } return str.toString(); } public static void main(String args[]) { File file=new File("c:/MATLAB7"); VisualDirectory.deepList(file); //System.out.println("\tab"); //System.out.println('\t'+"ab");转义字符可以用字符形式也可以使用字符串形式 } }
相关文章推荐
- Java基础之IO流,使用File类以树形结构打印指定文件目录
- 在同一个下拉列表显示树形结构
- Linux/Ubuntu tree 命令以树形结构显示文件夹目录结构
- win tree命令 tree导出目录 tree显示树形结构
- Linux/Ubuntu tree 命令以树形结构显示文件夹目录结构
- Hibernate辅助实现系统目录的树形结构的打印
- linux tree命令以树形结构显示文件目录结构
- java IO编程——显示一个目录的层次结构
- 【IO面试题】打印目录树形结构,并输出到file.txt中
- Qt中树形结构显示目录结构
- linux 以树形结构显示目录
- linux tree命令以树形结构显示文件目录
- Linux用树形结构显示目录结构
- 利用一个简单的递归实现打印目录的层次结构
- 给定一个目录,要求按照层次显示目录结构信息,文件名后面加上*或\来表示文件夹
- 遍历一个指定的目录(包含子目录和文件),用Jdom把该目录的树形结构写入xml文件中
- 在同一个下拉列表显示树形结构
- 完成一个程序,打印一个树状的目录结构。子目录与父目录之间有两个空格的缩进
- linux--tree命令以树形结构显示文件目录结构
- linux 用树形命令tree 显示文件目录结构及处理CRT显示乱码问题