A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. /编写程序,从键盘中录入一个字符串,这个字符串是一个文件目录(注意:本题要求是一个多级文件目录),要求将该目录下的所有.java文件显示在控制中。
  2. public class Test1
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                 try
  7.                 {
  8.                         printJavaFile(getDir(),0);
  9.                 }
  10.                 catch (IOException e)
  11.                 {
  12.                         throw new RuntimeException("读取失败");
  13.                 }
  14.         }
  15.        
  16.         public static File getDir() throws IOException
  17.         {
  18.                 BufferedReader bufr=
  19.                                 new BufferedReader(new InputStreamReader(System.in));
  20.                 String line=null;
  21.                 File dir=null;
  22.                 while((line=bufr.readLine())!=null)
  23.                 {
  24.                         dir=new File(line);
  25.                         if(dir.isDirectory())
  26.                                 break;
  27.                         else
  28.                                 System.out.println("输入错误,请输入一个正确的目录");
  29.                 }
  30.                 return dir;
  31.         }
  32.        
  33.         public static void printJavaFile(File dir,int lev)
  34.         {
  35.                         System.out.println(getLev(lev)+dir);
  36.                         lev++;
  37.                         File[] files=dir.listFiles();
  38.                        
  39.                         for(File f:files)
  40.                         {
  41.                                 if(f.isDirectory())
  42.                                 {
  43.                                         printJavaFile(f,lev);
  44.                                 }
  45.                                 else
  46.                                 {
  47.                                         String fileName=f.toString();
  48.                                         if(fileName.endsWith(".java"))
  49.                                                 System.out.println(getLev(lev)+fileName);
  50.                                 }
  51.                         }
  52.         }
复制代码


3 个回复

正序浏览
安安安 发表于 2015-6-19 17:06
学到了switch就19技术分了。什么鬼啊。。

可以用黑马币换的,只要经常在论坛发言就会有黑马币了
回复 使用道具 举报
学到了switch就19技术分了。什么鬼啊。。
回复 使用道具 举报
我只学到了switch,还没学到这里
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马