加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

编写一个程序,当用户输入一个目录时,该程序能列出该目录下的所有子目录和文件。

(2012-05-23 15:28:34)
标签:

it

分类: java学习

package test4;

import java.io.File;
import java.io.InputStream;
import java.util.Scanner;

public class ListAll {

 
 public static void main(String[] args) {

  //File dir = new File("F:\\各个知识点总结");
  Scanner s=new Scanner(System.in);
  System.out.println("请输入文件地址");
  String str=s.next();
  
  File dir=new File(str);
  if(!dir.exists()){
   throw new RuntimeException("请输入正确路径");
  }
   
  listAll(dir,0);
 }

 public static void listAll(File dir,int level) {
  
 
  System.out.println(getSpace(level)+dir.getName());
  //获取指定目录下当前的所有文件夹或者文件对象
  
  level++;
  File[] files = dir.listFiles();
  
  for(int x=0; x<files.length; x++){
   
   if(files[x].isDirectory()){
    listAll(files[x],level);
   }
   else
    System.out.println(getSpace(level)+files[x].getName());
  
 }

 
 private static String getSpace(int level) {
  
  StringBuilder sb = new StringBuilder();
  
  sb.append("|--");
  for(int x=0; x<level; x++){
   sb.insert(0,"  ");
  }
  
  return sb.toString();
 }
 
}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有