import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class CodeCount {
static long whiteLines = 0;
static long commentLines = 0;
static long normalLines = 0;
public static void main(String[] args) throws Exception {
File file = new File("D:\\txt");
File[] files = file.listFiles();
for (File child : files) {
if (child.getName().matches(".*\\.txt{1}quot;)) {
System.out.println(child.getName());
p(child);
}
}
System.out.println("whiteLines " + whiteLines);
System.out.println("commentLines " + commentLines);
System.out.println("normalLines " + normalLines);
}
private static void p(File file) throws Exception {
boolean comment = false;
BufferedReader br = new BufferedReader(new FileReader(file));
String line = null;
while ((line = br.readLine()) != null) {
line = line.trim();
if (line.matches("^[\\s&&[^\\n]]*{1}quot;)) {
whiteLines++;
} else if (line.startsWith("/*") && !line.endsWith("*/")) {
commentLines++;
comment = true;
} else if (true == comment) {
commentLines++;
if (line.endsWith("*/")) {
comment = false;
}
} else {
normalLines++;
}
}
}
}
查看指定个文件夹下的指定文件
