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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张文豪 中级黑马   /  2013-9-9 15:21  /  1164 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杨增坤 于 2013-9-9 19:55 编辑
  1. <p><p>import java.util.*;
  2. import java.io.*;
  3. class JavaFileList
  4. {
  5.         public static void main(String[] args)
  6.         {
  7.                         File dir=new File("e:\\java try");
  8.                         List<File> list=new ArrayList<File>();
  9.                         fileToList(dir,list);
  10.                         System.out.println(list.size());
  11.                         
  12.         }
  13.         public static void fileToList(File dir,List<File> list)
  14.         {
  15.                 File[] files = dir.listFiles();
  16.                 for(File file:files)
  17.                 {
  18.                         if(file.isDirectory())
  19.                                 fileToList(file,list);
  20.                         else
  21.                         {
  22.                                 if(file.getName().endsWith(".java"))
  23.                                         list.add(file);
  24.                         }
  25.                 }
  26.         }
  27.         public static void writerToFile(List<File> list,String javaListFile)throw IOException
  28.         {
  29.                 BufferedWriter bufw = null;
  30.                 try
  31.                 {
  32.                         bufw = new BufferedWriter(new FileWriter(javaListFile));
  33.                         for(File f:list)
  34.                         {
  35.                                 String path = f.getAbsolutePath();
  36.                                 bufw.writer(path);
  37.                                 bufw.newLine();
  38.                                 bufw.flush;
  39.                         }</p><p>             }
  40.                         catch(IOException e)
  41.                         {
  42.                                 throw e;
  43.                         }
  44.                         finally
  45.                         {
  46.                                 try
  47.                                 {
  48.                                         if(bufw!=null)//这里为什么要加这句呢???突然就不明白了
  49.                                                 bufw.close();
  50.                                 }
  51.                                 catch (IOException e)
  52.                                 {
  53.                                         throw e;
  54.                                 }
  55.         }
  56. }</p></p>
复制代码

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

4 个回复

倒序浏览
应该是转换流关闭还是没有关闭,如果没有关闭,就把流关闭掉/
回复 使用道具 举报
是因为如果前面写入什么的出现异常的的话,可能bufw就没有new成功呢。所以这个时候,你要是关它的话会出错误的。所以,在关之前要先判断它究竟存在不

评分

参与人数 1技术分 +1 收起 理由
EYE_SEE_YOU + 1

查看全部评分

回复 使用道具 举报
辛春鹏 发表于 2013-9-9 15:55
是因为如果前面写入什么的出现异常的的话,可能bufw就没有new成功呢。所以这个时候,你要是关它的话会出错 ...

懂了!!
回复 使用道具 举报
楼主,你好,如果您的问题解决了!


请把您问题的未解决更改为已解决

谢谢合作!

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马