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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© baoyumin 中级黑马   /  2016-2-23 21:20  /  382 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package com.practice;

  2. import java.io.File;
  3. import java.util.Scanner;

  4. public class Practice_digui2 {
  5.         public static void main(String[] args) {
  6.                 /*
  7.                  * 分析:
  8.                  * 本函数分三部分
  9.                  * 第一部分 主函数,内有两个方法调用,分别是fun():创建数组接收dir的文件列表,遍历并判断.java的文件
  10.                  *                                                            getDir()用于创建键盘录入对象,当调用该方法时
  11.                  * 键盘可以接受一个文件夹路径,并封装成一个file文件夹路径传递给fun()
  12.                  * 第二部分fun()函数
  13.                  * 第三部分getDir()函数
  14.                  */
  15.                 File dir = getDir();
  16.                 fun(dir);
  17.         }

  18.         private static void fun(File dir) {
  19.                 File[] subFiles = dir.listFiles();
  20.                 //遍历数组
  21.                 for (File subfile : subFiles) {
  22.                         if (subfile.isFile()&&subfile.getName().endsWith(".java")) {
  23.                                 System.out.println(subfile);
  24.                         }else if(subfile.isDirectory()){
  25.                                 fun(dir);
  26.                         }
  27.                 }
  28.         }

  29.         private static File getDir() {
  30.                 System.out.println("输入一个文件夹路径");
  31.                 Scanner sc = new Scanner(System.in);
  32.                 while(true){
  33.                         String line = sc.nextLine();
  34.                         File dir = new File(line);
  35.                         if (dir.isFile()) {
  36.                                 System.out.println("输入的是文件名,请重新输入");
  37.                         }else if(!dir.exists()){
  38.                                 System.out.println("输入的文件目录不存在");
  39.                         }else{
  40.                                 return dir;
  41.                         }
  42.                 }
  43.         }
  44. }
  45. 这个代码哪里出错了?
复制代码

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马