import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
public class ListFile
{
/**
* 实现对目录的遍历,输出目录下的所有文件名
* @param url:目录路径
*/
private int count=0;
public int getCount()
{
return count;
}
public void listDir(String url)
{
File file=new File(url);
/**
* 判断文件是否存在
*/
if(!file.exists())
{
System.out.println("此路径不存在");
return ;//程序不在就行执行
}
/**
* file存在,并且是一个目录
*/
if(file.isDirectory())
{
//遍历目录下的所有文件及目录
File[] files=file.listFiles();
for(int i=0;i<files.length;i++)
{
//递归调用
this.listDir(files[i].getAbsolutePath());
}
}
/**
* 如果file是一个文件,就直接输出改文件
*/
else
{
//System.out.println(file.getAbsolutePath());
//过滤文件,只输出.Java后缀的文件
if(file.getAbsolutePath().endsWith(".java"))
{
System.out.println(file.getAbsolutePath());
Reader r=null;
BufferedReader br=null;
try
{
r=new FileReader(file);//读文件
br=new BufferedReader(r);//按行读文件
while(br.readLine()!=null)//统计文件的行数
{
this.count++;
}
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
public static void main(String args[])
{
ListFile lf=new ListFile();
lf.listDir("D:\\作业");
System.out.println("恭喜你!目前为止,你已经写了"+lf.getCount()+ "行代码了");
System.out.println("继续努力!未来属于你");
}
}
import java.io.File; public class fileterInfoToo { public static void listFile(File file) throws Exception { //如果输入的是一个文件就直接将文件的全路径直接打印出来 int filecount=0; int filejiacount=0; if (!file.isFile()) { filejiacount++; File [] f=file.listFiles(); for(int i=0;i<f.length;i++) { file=f[i]; if(!file.isFile()) { File [] f=file.listFiles(); filejiacount++; } System.out.println(file); } System.out.println("文件的个数:"+filejiacount); } else { File[] files = file.listFiles(); } } public static void main(String [] args)throws Exception { File file=new File("c://java"); listFile(file); }}