1. 程式人生 > >java統計你一共寫了多少程式碼

java統計你一共寫了多少程式碼

MyEclipse統計你一共寫了多少程式碼(主要用io流實現的):

package study02;

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

public class TestCountDir {
	private int count;
	
	private void countLine(File sourceFile) throws IOException{
		BufferedReader br=null;
		try{
			//新建檔案輸入流
			br=new BufferedReader(new FileReader(sourceFile));
			while(br.readLine()!=null){
				count++;
			}
		}finally{
			br.close();
		}
	}
	private void countDir(String sourceDir) throws IOException{
		File fSourceDir=new File(sourceDir);
		if(!fSourceDir.exists()||!fSourceDir.isDirectory()){
			System.out.println("源目錄不存在!!!");
			return;
		}
		//遍歷目錄下的檔案或目錄
		File[] file=fSourceDir.listFiles();
		for(int i=0;i<file.length;i++){
			if(file[i].isFile()){
				if(file[i].getName().toLowerCase().endsWith(".java")){
					countLine(file[i]);
				}
			}
			if(file[i].isDirectory()){
				String subSourceDir=sourceDir+File.separator+file[i].getName();
				countDir(subSourceDir);
			}
		}
	}
	public static void main(String[] args) throws IOException {
		TestCountDir tcd=new TestCountDir();
		tcd.countDir("C:\\Users\\john20\\Workspaces\\MyEclipse 2017 CI\\mystudy");
		System.out.println(tcd.count);
	}
}

在這裡插入圖片描述

我從學習到現在才打這麼點,嘿嘿。