2.创建某个目录下.java文件的清单
/*
将一个指定目录下的java文件的绝对路径,存储到一个文本文件中
建立一个java文件列表文件。
思路;
1.对指定目录进行递归
2.获取递归过程所有的java文件的路径
3.将这些路径存储到集合中,
4.将集合中的数据写入到一个文件中
file对象能变成字符对象 file.toString();
字符对象能变成file对象 File file=new File("new.txt");
*/
public calss CreateDir{
public static void main(String[] args){
File f=new File("D:\\java");//指定在哪个目录下操作
List<File > list=new ArrayLIst,<File>();//集合
FiletoList(f,list);//将文件写进list里面去了
System.out.println(list.size());
File f=new File(f,"newjava.txt");//写到这个文件里面 将list集合中的数据
writeToFile(list,f.toString());
}
//将文件写进lis集合中
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 javaName )throws IOException {
//用流的思想
BufferedWriter bw=new BufferedWrite(new FileWriter(javaName));//关联写入流目的地
//高级for循环遍历list集合
for(File f: list){
String path=f.getAbsolutePath();//得到集合中文件对象的绝对路径
bw.write(path);//将绝对路径写到文本中
bw.newLine();//换行
bw.flush();//刷
}
}//为了方便这里就直接抛出去了 实际要写try finally
}