import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class TestIO7 {
//用于判断目录或文件所处的层次
private static int time;
private static void listAllFiles(File f){
//File[] fs = f.listFiles();
if(f.isFile()||f.list().length==0){
return ;
}
else{
File[] fs = f.listFiles();
File[] fs2 = sort(fs);
for(File f2:fs2){
StringBuffer sb = new StringBuffer();
if(f2.isFile()){
sb.append(getTabs(time));
sb.append(f2.getName());
}
else{
sb.append(getTabs(time));
sb.append(f2.getName());
sb.append("\\");
}
System.out.println(sb.toString());
if(f2.isDirectory())
{
time++;
listAllFiles(f2);
time--;
}
}
}
}
private static File[] sort(File[] f){
List<File> list = new ArrayList<File>();
for(File ff : f){
if(ff.isDirectory()){
list.add(ff);
}
}
for(File ff:f){
if(ff.isFile()){
list.add(ff);
}
}
return list.toArray(new File[f.length]);
}
private static String getTabs(int time){
StringBuffer sb = new StringBuffer();
for(int i=0;i<time;i++){
sb.append("\t");
}
return sb.toString();
}
public static void main(String[] args) {
//TestIO7 test = new TestIO7();
listAllFiles(new File("c:/wds"));
}
}
import java.util.ArrayList;
import java.util.List;
public class TestIO7 {
//用于判断目录或文件所处的层次
private static int time;
private static void listAllFiles(File f){
//File[] fs = f.listFiles();
if(f.isFile()||f.list().length==0){
return ;
}
else{
File[] fs = f.listFiles();
File[] fs2 = sort(fs);
for(File f2:fs2){
StringBuffer sb = new StringBuffer();
if(f2.isFile()){
sb.append(getTabs(time));
sb.append(f2.getName());
}
else{
sb.append(getTabs(time));
sb.append(f2.getName());
sb.append("\\");
}
System.out.println(sb.toString());
if(f2.isDirectory())
{
time++;
listAllFiles(f2);
time--;
}
}
}
}
private static File[] sort(File[] f){
List<File> list = new ArrayList<File>();
for(File ff : f){
if(ff.isDirectory()){
list.add(ff);
}
}
for(File ff:f){
if(ff.isFile()){
list.add(ff);
}
}
return list.toArray(new File[f.length]);
}
private static String getTabs(int time){
StringBuffer sb = new StringBuffer();
for(int i=0;i<time;i++){
sb.append("\t");
}
return sb.toString();
}
public static void main(String[] args) {
//TestIO7 test = new TestIO7();
listAllFiles(new File("c:/wds"));
}
}