60

来源:互联网 发布:猴子头像是什么软件 编辑:程序博客网 时间:2024/04/29 00:19
package com.haizhitao.io2;import java.io.File;import java.util.ArrayList;public class ListAllTest{//用于判断目录或文件所处的层次private static int time;//递归的方法public static void deepList(File file){if(file.isFile() || file.listFiles().length == 0){return;}else{File[] files = file.listFiles();files = sort(files);for(File f : files){StringBuffer output = new StringBuffer();if(f.isFile()){output.append(getTabs(time));output.append(f.getName());}else{output.append(getTabs(time));output.append(f.getName());output.append("\\");}System.out.println(output);if(f.isDirectory()){time++;deepList(f);time--;}}}}//整理文件数组,使得目录排在文件之前private static File[] sort(File[] files){ArrayList<File> sorted = new ArrayList<File>();//寻找所有的目录for(File f : files){if(f.isDirectory())sorted.add(f);}//寻找所有的文件for(File f : files){if(f.isFile())sorted.add(f);}return sorted.toArray(new File[files.length]);}//判断需要增加多少个tab的方法private static String getTabs(int time){StringBuffer buffer = new StringBuffer();for(int i = 0; i < time; i++){buffer.append("\t");}return buffer.toString();}public static void main(String[] args){File file = new File("E:\\学习1\\海之涛.JAVA学习\\Java视频教程——张龙\\lesson14.code");deepList(file);}}//output://decorator\//Client.java//Component.java//ConcreteComponent.java//ConcreteDecorator1.java//ConcreteDecorator2.java//Decorator.java//io\//Fab.java//FileTest1.java//FileTest2.java//FileTest3.java//FileTest4.java//FileTest5.java//FileTest6.java//FileTest7.java//FileTest8.java//FileTest9.java//Test1.java//io2\//.ListAllTest.java.swp//BufferedOutputStreamTest1.java//ByteArrayInputStreamTest1.java//ByteArrayOutputStreamTest1.java//CharArrayReader1.java//CharSet.java//DataStream1.java//FileReader1.java//FileWriter1.java//InputStreamTest1.java//ListAllTest.java//ListAllTest.java~//MyOwnStream1.java//MyOwnStream2.java//OutputStreamTest1.java//RandomAccessFile1.java//StreamTest.java//StreamTest2.java//Decorator.pdf//IO_3.pdf