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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xiaoyi 中级黑马   /  2015-1-13 17:39  /  1077 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. <p>/*</p><p>题目:将一个指定目录下的java文件的绝对路径,存储到一个shuoming.txt中,建立一个java文件列表文件。</p><p>思路:1,对指定的目录进行递归。(当我把目录直接写为   D:      时有错误,改为     D:\\JAVA    时无错误)
  2.           2,获取递归过程所以的java文件的路径。
  3.           3,将这些路径存储到集合中。
  4.           4,将集合中的数据写入到一个文件中。</p><p>注:我的D盘里只有D:\\JAVA  中有.java文件 分别在day01到day20文件夹中</p><p>当我把目录直接写为   D:   时   shuoming.txt中只有   day20文件夹中的.java文件,</p><p>      改为     D:\\JAVA    时所有文件都有。</p><p>*/</p><p>//求大神解释一下啊</p><p>
  5. </p><p>import java.io.*;
  6. import java.util.*;
  7. class JavaFileList
  8. {
  9.         public static void main(String[] args)throws IOException
  10.         {
  11.                 File f=new File("D:");
  12.                 List<File> list=new ArrayList<File>();
  13.                 fileToList(f,list);
  14.                 File shuoming=new File("D:\\JAVA","shuoming.txt");
  15.                 sop(shuoming.createNewFile());
  16.                 writeToTxt(list,shuoming);
  17.                
  18.         }
  19.         public static void fileToList(File dir,List<File> list)
  20.         {
  21.                 File[] name=dir.listFiles();
  22.                 for(File file : name)
  23.                 {
  24.                         if(file.isDirectory())
  25.                                 fileToList(file,list);
  26.                         else
  27.                         {
  28.                                 if(file.getName().endsWith(".java"))
  29.                                         list.add(file);
  30.                         }
  31.                 }
  32.         }
  33.         public static void writeToTxt(List<File> list,File shuoming)
  34.         {
  35.                 BufferedWriter buw=null;
  36.                 try
  37.                 {
  38.                         buw=new BufferedWriter(new FileWriter(shuoming));
  39.                         for(File f:list)
  40.                         {
  41.                                 String s=f.getAbsolutePath();
  42.                                 buw.write(s);
  43.                                 buw.newLine();
  44.                                 buw.flush();
  45.                         }
  46.                        
  47.                 }
  48.                 catch(IOException e)
  49.                 {
  50.                         sop("写入失败");
  51.                 }
  52.                 finally
  53.                 {
  54.                         try
  55.                         {
  56.                                 if(buw!=null)
  57.                                         buw.close();
  58.                         }
  59.                         catch(IOException e1)
  60.                         {
  61.                                 sop("关闭资源失败");
  62.                        
  63.                         }
  64.                 }
  65.         }
  66.         public static void sop(Object o)
  67.         {
  68.                 System.out.println(o);
  69.         }
  70. }</p>
复制代码




2 个回复

倒序浏览
学习一下,不太懂这个
回复 使用道具 举报
擦,第一次发代码前面怎么是这个样子  各种 </p> 我也是醉了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马