/*
将一个指定目录下的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("d:\\demo");//先有个指定目录
List<File> list = new ArrayList<File>();//先有个集合
fileToList(dir,list);
System.out.println(list.size());
File file = new File(dir,"javalist2.txt");
writeToFile(list,file);
}
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,File javaListFile) throws IOException
{
BufferedWriter bufw = null;
try
{
//此为目的地,可以直接写文件名"f.txt",但作为一个方法,宜变量
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;
}
}
}
}
将一个指定目录下的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("d:\\demo");//先有个指定目录
List<File> list = new ArrayList<File>();//先有个集合
fileToList(dir,list);
System.out.println(list.size());
File file = new File(dir,"javalist2.txt");
writeToFile(list,file);
}
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,File javaListFile) throws IOException
{
BufferedWriter bufw = null;
try
{
//此为目的地,可以直接写文件名"f.txt",但作为一个方法,宜变量
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;
}
}
}
}