package 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;
import java.util.ArrayList;
import java.util.List;
public class CodeFontNumber {
private static String PATH = "D:\\source\\git\\android\\he3.sd\\app\\src\\main\\java\\he3\\sd";
private static int Number = 0;
private static List JavaCodeFilePath = new ArrayList<>();
public static void main(String[] args) {
getCodeFilePath(PATH);
JavaCodeFilePath.forEach(file->{
StatisticsCodeNumber(new File(file));
});
System.out.println(Number);
}
private static void StatisticsCodeNumber(File file) {
try {
FileInputStream fis = new FileInputStream(file);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String line = null;
while ((line = br.readLine())!= null) {
Number++;
}
fis.close();
br.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void getCodeFilePath(String path) {
File file = new File(path);
File[] filesArr = file.listFiles();
if (filesArr == null) {
return;
} else {
for (File item : filesArr) {
if (item.isDirectory()) {
getCodeFilePath(item.getPath());
} else {
if(item.getPath().substring(item.getPath().lastIndexOf(".")).equals(".java"))
JavaCodeFilePath.add(item.getPath());
}
}
}
}
}