1.一部分是很多例子都有的,列出文件夹下所有文件。
2.计算一个文件的代码行数。
代码如下:
package com.blackwing.test; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; //计算项目代码数 public class CountProjectCodeLines { public static int count; public static void listAllFiles(File f) { if(f.isDirectory()) { File [] files=f.listFiles(); if(null!=files) { for(File fs:files) { listAllFiles(fs); } } } else{//遇到单个文件,则开始计算行数 System.out.println(f); try { BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(f))); try { while(null!=br.readLine()) count++; } catch (IOException e) { e.printStackTrace(); } } catch (FileNotFoundException e) { e.printStackTrace(); } } } public static void main(String[] args) { String path="F:"+File.separator+"chinafang"+File.separator+"src"+File.separator+"com"+File.separator+"china1819"; File project=new File(path); CountProjectCodeLines.listAllFiles(project); System.out.println("项目总代码行数:"+count); } }
把文件夹传递给path就行。当然,这里不特别考虑错误处理方面全部问题。