黑马程序员技术交流社区

标题: 各位大神帮我看一下,哪里错了。谢谢 [打印本页]

作者: falonsokaka914    时间: 2014-10-30 20:07
标题: 各位大神帮我看一下,哪里错了。谢谢
/*
* 从键盘输入接受一个文件夹路径, 打印出该文件夹下所有的.java文件名
*/
public class Test4 {
public static void main(String[] args){
  File dir = getDir();
  printJAVAFile(dir);
}
//File dir , 从键盘录入的文件夹路径,
public static void printJAVAFile(File dir){   
  //获取dir路径下所有的文件和文件夹
  File[] subFile = dir.listFiles();
  for(File subFile : subFiles){
   
   if(subFile.isFile() && subFile.getName().endsWith(".java")){
    System.out.println(subFile);
   }else if(dir.isDirectory()){
    printJAVAFile(subFile);
   }
  }
}
public static File getDir(){
  Scanner sc = new Scanner(System.in);
  System.out.println("请输入一个文件夹路径");
  
  while(true){
   String line = sc.nextLine();
   File dir = new File(line);
   if(! dir.exists()){
    System.out.println("输入错误, 请重新输入");
   }else if(dir.isFile()){
    System.out.println("输入错误, 请重新输入");
   }else{
    return dir;
   }
  }
}
}
作者: falonsokaka914    时间: 2014-10-30 20:08
自己先顶一下:P
作者: 小鸡捉你    时间: 2014-10-30 20:32
//File dir , 从键盘录入的文件夹路径,
public static void printJAVAFile(File dir){   
  //获取dir路径下所有的文件和文件夹
  File[] subFile = dir.listFiles();
  for(File subFile : subFiles){
   
   if(subFile.isFile() && subFile.getName().endsWith(".java")){
    System.out.println(subFile);
   }else if(subFile .isDirectory()){//这里错了
    printJAVAFile(subFile);
   }
  }
}
作者: feng_0207    时间: 2014-10-31 22:50
  1. else if(dir.isDirectory()){
  2.                     printJAVAFile(subFile);
复制代码

dir当然是路径了,还有不是以.java结尾的文件呢? 还需要else




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2