说明:
检测整个项目的非空代码行数
java文件数
package work;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
/*
检测java文件中的代码行数
*/
public class FileDemo4 {
static int sum = 0;
public static void main(String[] args) throws FileNotFoundException {
File file = new File("files"); //当前文件夹
System.out.println(file.exists());
File file1 = file.getAbsoluteFile().getParentFile().getParentFile(); //当前文件夹的绝对路径的上级目录的上级目录
list(file1); //将需要检测的File传入方法中
System.out.println(sum);
}
//列出所有的文件,判断是否为java文件,如果是就用Scanner检测器检测文件中有多少行代码,判断是否为空行,如果不是空格则计数器加一,得出文件夹中所有的java文件的代码行数
private static void list(File file1) throws FileNotFoundException {
File[] files = file1.listFiles();
for (int i = 0; i <files.length ; i++) {
if (files[i].isDirectory()){
list(files[i]);
}else{
if (files[i].toString().endsWith(".java")){
Scanner sc=new Scanner(files[i]);
while(sc.hasNextLine()){
String str=sc.nextLine();
if(!"".equals(str.trim())){
sum++;
}
}
}
}
}
}
}