`
奎河少年
  • 浏览: 23684 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

代码统计小程序

阅读更多
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class CodeCounter {
	
	static long normalLines = 0;
	static long commentLines = 0;
	static long whiteLines = 0;
	
	public static void main(String[] args) {
		File f = new File("D:\\share\\JavaProjects\\TankWar1.9.11\\src");
		File[] codeFiles = f.listFiles();
		for(File child : codeFiles){
			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("*/")) {
					commentLines ++;
					comment = true;	
				} else if (line.startsWith("/*") && line.endsWith("*/")) {
					commentLines ++;
				} else if (true == comment) {
					commentLines ++;
					if(line.endsWith("*/")) {
						comment = false;
					}
				} else if (line.startsWith("//")) {
					commentLines ++;
				} else {
					normalLines ++;
				}
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if(br != null) {
				try {
					br.close();
					br = null;
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
	}

}

 

分享到:
评论

相关推荐

    基于java的代码统计小程序

    这个是java写的一个代码统计的小程序!非常实用,具有较好的参考价值

    小程序源码 记账统计 (代码源)

    小程序源码 记账统计 (代码源)小程序源码 记账统计 (代码源)小程序源码 记账统计 (代码源)小程序源码 记账统计 (代码源)小程序源码 记账统计 (代码源)小程序源码 记账统计 (代码源)小程序源码 记账统计 (代码源)小...

    java实现代码统计小程序

    主要为大家详细介绍了java实现代码统计小程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    JAVA程序代码统计小软件

    JAVA程序代码统计小软件JAVA程序代码统计小软件

    微信小程序 运动健身 悦跑圈 (源代码+截图)

    微信小程序 运动健身 悦跑圈 (源代码+截图)微信小程序 运动健身 悦跑圈 (源代码+截图)微信小程序 运动健身 悦跑圈 (源代码+截图)微信小程序 运动健身 悦跑圈 (源代码+截图)微信小程序 运动健身 悦跑圈 (源...

    java开发项目本科毕业设计小程序上课考勤系统源代码.zip

    小程序上课考勤系统,后台管理,小程序前端GPS签到,小程序定位打卡,迟到统计等等 快速开发框架完成。java开发项目本科毕业设计小程序上课考勤系统源代码java开发项目本科毕业设计小程序上课考勤系统源代码java开发...

    26个经典微信小程序实例源码大全下载.zip

    仿 「ONE · 一个」 的微信小程序 .zip 仿网易云音乐APP的微信小程序 .zip 高仿手机QQ应用程序.zip 跑步微信小程序 .zip 企业级微信小程序全栈方案 .zip 微信小程序 —— 新闻阅读器.zip 微信小程序 Sports News...

    用java写的统计代码小程序

    一个用java写的源代码分析小软件,可以对.c.cpp.java文件进行代码分析,很粗糙

    微信悦跑圈跑步轨迹统计小程序源代码.rar

    微信跑步统计小程序-悦跑圈源代码,仿微信跑步步数统计,可记录用户跑步的轨迹,与地图结合使用,在地图上标记出跑步的线路,记录步数,记录里程数和跑步用时,可统计使用本小程序跑步的排行榜,跑步名次记录等,和...

    微信小程序DEMO设计源代码合集(45款).rar

    微信小程序DEMO设计源代码合集(45款),可供学习及设计参考。

    代码行数统计工具代码统计

    代码行统计小工具,支持递归查询。统计内容包括:代码行数、注释行数、空行数、总行数等。网上下载的,与大家分享。来源查看程序,关于

    微信记账小程序源码个人记账本小程序源码

    微信记账小程序源码,个人记账本小程序源码。一款实用的记账列表,分类记账,生活记账小程序工具。包含:添加记账、编辑记账、统计分析、计算器等4个页面。 微信记账小程序源码,个人记账本小程序源码。一款实用的...

    c/c++代码量统计小工具(含代码和可执行程序)

    可统计某个目录下所有.c, .cpp, .h文件的代码行数,注释行数和空行数,同时统计扫描过的文件总数目和代码文件数目。

    微信小程序核酸检测预约小程序源码+详细使用文档.zip

    核酸检测预约小程序包括防疫动态,预约规则宣讲,核酸检测预约,预约管理,预约名单导出,预约数据整理等功能,前后端代码完整,采用腾讯小程序云开发技术。想做核酸?疫情期间,不愿意出门去人多的地方?不愿意排队...

    流量统计 小程序

    流量,统计,网站,很好的统计数量,简单的代码 直接插入就可以

    java代码统计工具

    统计.java文件里所有的代码行数,注释行数

    微信跑步统计小程序-悦跑圈源代码,仿微信跑步步数统计

    微信跑步统计小程序-悦跑圈源代码,仿微信跑步步数统计,可记录用户跑步的轨迹,与地图结合使用,在地图上标记出跑步的线路,记录步数,记录里程数和跑步用时,可统计使用本小程序跑步的排行榜,跑步名次记录等,和...

    JavaScript开发项目通用课程预约小程序源代码.zip

    本小程序前后端完整代码包括机构动态,最新通知新闻,师资介绍,课程预约,教师预约 等功能,并提供强大的后台管理系统,可以进行预约设定,时段设定,人数统计,名单统计,名单Excel导出,签到管理等。 课程预约...

    Java代码统计

    Java代码统计小程序,含源码,程序简单,适合初学者阅读,方便统计Java代码数

    同城商业信息小程序源代码

    同城商业信息小程序源代码 同城信息的优势: –全国版,多城市版,本地版可自由切换,可满足更多用户的需求 –分类信息、商户入驻、红包广告、同城动态、代理加盟、五合一, 一个模块就相当于5个模块 –支持付费发帖...

Global site tag (gtag.js) - Google Analytics