统计文件夹得个数

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); }}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值