正则表达式小应用-代码统计小程序
来源:互联网 发布:王者荣耀诸葛亮知乎 编辑:程序博客网 时间:2024/04/27 16:00
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 normalLines = 0;
static long commentLines = 0;
static long whiteLines = 0;
public static void main(String[] args) {
File f = new File("D://JavaProject//TankWar//src");
File[] codeFiles = f.listFiles();
System.out.println("" + codeFiles.length);
for(File child:codeFiles){ //增强for循环
if(child.getName().matches(".*//.java$")) {
parse(child);
}
}
System.out.println("normalLines:" + normalLines);
System.out.println("commentLines:" + commentLines);
System.out.println("whiteLines:" + whiteLines);
}
private static void parse(File f) {
BufferedReader br = null;
boolean comment = false;
try {
br = new BufferedReader(new FileReader(f));
String line = "";
while((line = br.readLine()) != null){
line = line.trim();
if(line.matches("^[//s&&[^//n]]*")){
whiteLines ++;
} else if(line.startsWith("/*") && !line.endsWith("*/")) {
comment = true;
commentLines ++;
} else if(line.endsWith("*/")) {
comment =false;
commentLines ++;
}else if(true == comment) {
commentLines ++;
} else if(line.startsWith("/*") && line.endsWith("*/")) {
commentLines ++;
} else if(line.startsWith("//")) {
commentLines ++;
} else {
normalLines ++;
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
- 正则表达式小应用-代码统计小程序
- 应用——代码统计小程序
- 正则表达式小应用
- 代码统计小程序
- Python 爬虫小程序(正则表达式的应用)
- 代码统计小程序 Java
- java 统计代码小程序
- 统计代码量小程序
- 正则表达式的应用小总结
- 正则表达式的20个小应用
- 关于正则表达式的小程序
- java程序小例子8-正则表达式
- javascript 正则表达式测试小程序
- 统计自己的代码量小程序
- 正则表达式小谈
- 正则表达式小收集
- 正则表达式小探
- 正则表达式小笔记
- 几个典型的内存拷贝及字符串函数实现
- 如何向数据库中插入海量的数据呢?
- 内存对齐
- 位运算
- CALLBACK
- 正则表达式小应用-代码统计小程序
- 线程池
- JSP实现几秒后自动跳转某页面并页面上显示时间在走动
- 对C的printf函数的可变长参数实现的分析
- 使用C#制作MySchool项目代码
- 法国悖论
- 小tip,如何使用别人的Android例程,安装卸载apk
- 弹性计算云Eucalyptus安装及使用(centos5.3版)
- Unix/Linux下vim常用命令