美文网首页
IO流练习(将文件的数据存储到指定文本文件中)

IO流练习(将文件的数据存储到指定文本文件中)

作者: menmo_O | 来源:发表于2017-12-30 23:13 被阅读0次

练习:
将一个指定目录下的java文件的绝对路径,存储到一个文本文件中。
建立以java文件列表文件。

思路;
1,对指定的目录进行递归。
2,获取递归过程所有的java文件的路径。
3,将这些路径存储到集合中。
4,将集合中的数据写入到一个文件中。

import java.io.*;
import java.util.*;
class JavaFileList 
{
    public static void main(String[] args) throws IOException
    {
        File dir = new File("E:\\Ziliao\\Java\\practice\\day_one");
        List<File> list = new ArrayList<File>();
        fileToList(dir,list);
//      System.out.println(list.size());
        File file = new File(dir,"javalist.txt");
        writeToFile(list,file.toString());
    }
    public static void fileToList(File dir,List<File> list)
    {
        File[] files = dir.listFiles();
        for (File file : files)
        {
            if(file.isDirectory())
                fileToList(file,list);
            else
            {
                if(file.getName().endsWith(".java"))
                    list.add(file);
            }
        }
    }
    public static void writeToFile(List<File> list, String javaListFile)throws IOException
    {
        BufferedWriter bufw = null;
        try
        {
            bufw = new BufferedWriter(new FileWriter(javaListFile));
            for (File f : list)
            {
                String path = f.getAbsolutePath();
                bufw.write(path);
                bufw.newLine();
                bufw.flush();
            }
        }
        catch (IOException e)
        {
            throw e;
        }
        finally
        {
            try
            {
                if(bufw!=null)
                    bufw.close();
            }
            catch (IOException e)
            {
                throw e;
            }
        }
    }
}

相关文章

网友评论

      本文标题:IO流练习(将文件的数据存储到指定文本文件中)

      本文链接:https://www.haomeiwen.com/subject/hmzngxtx.html