黑马程序员技术交流社区

标题: 递归查找文件列表失败 [打印本页]

作者: 想要那片海    时间: 2015-5-30 09:52
标题: 递归查找文件列表失败
本帖最后由 想要那片海 于 2015-5-30 10:07 编辑

如果要查找的文件目录下还有文件夹,通过递归查找子文件夹失败,请帮忙看看是哪里代码除了问题?

  1. <font size="2">import java.io.*;
  2. import java.util.ArrayList;

  3. public class SearchFile {

  4.         public static void main(String[] args) {
  5.                 // TODO Auto-generated method stub
  6.                 File dir=new File("E:\\java123\\test");               
  7.                 search(dir);
  8.         }
  9.         public static void search(File dir)
  10.         {
  11.                 if( (!dir.exists())&&(!dir.isDirectory()))
  12.                         throw new RuntimeException("路径不合法");
  13.                 PrintWriter bufw=null;
  14.                 File[] files=dir.listFiles();
  15.                 ArrayList<String> list=new ArrayList<String>();        
  16.                 list.add(dir.getAbsolutePath());
  17.                 for(int x=0;x<files.length;x++)
  18.                 {                                       
  19.                         if(files[x].isDirectory())
  20.                         {                                
  21.                                 search(files[x]);
  22.                                 System.out.println("继续查找文件夹"+files[x].getAbsolutePath());
  23.                         }
  24.                         else
  25.                         {
  26.                                 if(files[x].getName().endsWith(".java"))
  27.                                 {
  28.                                         list.add(files[x].getName());
  29.                                 }
  30.                                 else
  31.                                         continue;
  32.                         }
  33.                 }
  34.                 try
  35.                 {
  36.                         bufw=new PrintWriter(new FileWriter("E:\\java123\\黑马考试\\练习题\\文件列表2015-5-30.txt"));
  37.                         for(String file:list)
  38.                         {
  39.                                 bufw.println(file);
  40.                         }
  41.                         System.out.println("文件列表获取异常");
  42.                 }
  43.                  catch (IOException e) {
  44.                         // TODO Auto-generated catch block
  45.                         System.out.println("文件列表获取异常");
  46.                 }
  47.                 finally
  48.                 {
  49.                         try
  50.                         {
  51.                                 if(bufw!=null)
  52.                                         bufw.close();
  53.                         }
  54.                         catch (Exception e) {
  55.                                 System.out.println("流关闭异常");
  56.                         }
  57.                 }
  58.         }
  59.         
  60. }</font>
复制代码




作者: 想要那片海    时间: 2015-5-30 10:07
版主明鉴,自己把问题解决了,我这真不是灌水

搜狗截图20150530100547.jpg (140.34 KB, 下载次数: 2)

搜狗截图20150530100547.jpg

作者: 小车车    时间: 2015-5-30 12:54
刚好我也看到io那里!
作者: 志行    时间: 2015-5-30 13:31
楼主  我注意到你很久了~~~~经常看到你 额  不过我是顺便帮我舍友混一下论坛  所以我是两个号 还有一个xgd6612~~~~
作者: mnxnm    时间: 2015-5-30 14:00
楼主,你又在调戏人,:lol
刚发完帖子,又自己把问题解决了:D

不过,很厉害的样子
作者: 柒仴、看雲佉    时间: 2015-5-30 22:59
啊哦啊哦
作者: 南方小道士    时间: 2015-5-30 23:34
路过看看




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