关于项目中文件和行数统计

其实用到的东西很简单 File,BufferedReader。利用迭代的思路去处理下就好。

import java.io.BufferedReader;  
import java.io.File;  
import java.io.FileReader;  
import java.io.IOException;  

/**
 * 项目的统计java文件,及行数统计  
* 用到迭代的方式。  
 * [@author](http://my.oschina.net/arthor) Administrator  
 */

public class JavaCodeLines {  
    private  static int file_num = 0;
    private static int line_num = 0 ;
    private final static String FILE_PATH = "f:/book";
    public static void fileAndLine(File drl){
	        File[] files = drl.listFiles();//取得路径下所有的文件和目录列表
	
	        for(int i = 0 ; i < files.length ; i++){
		        if(files[i].isDirectory()){
			        fileAndLine(files[i]);
		        }else{//如果是文件
			        if(files[i].getName().endsWith(".java")){
				        file_num ++;
    					//计算文件的行数 
        				BufferedReader br = null;
	        			try {
		        			br = new  BufferedReader (new FileReader(files[i]));
			        		while(br.readLine()!=null){//一次读取一行,一直读到流的结尾
				        		line_num++;
					        }
					        br.close();
    					} catch (Exception e) {
        					// TODO Auto-generated catch block
	        				e.printStackTrace();
		        		} finally{
			        		if(br!=null){
				        		try {
					        		br.close();
						        } catch (IOException e) {
    								// TODO Auto-generated catch block
        							e.printStackTrace();
	        					}
		        			}
			        	}
    				}
			
        		}
        	}
}

public static void main(String[] args) {
	File project = new File(FILE_PATH);  
    fileAndLine(project);  
    System.out.println("files number: " + file_num);  
    System.out.println("code lines: " + line_num);  
}
}

转载于:https://my.oschina.net/carota/blog/740808

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值