`
king130520
  • 浏览: 20845 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

今天编的java代码统计

阅读更多
今天想试试学了很久的正则表达式,就编了一个小小的程序(朋友们要是有意见就提吧):
package regular.expression.codecounter;
import java.io.*;
public class CodeCounter {
	private static int normallines=0;
	private static int commentlines=0;
	private static int whitelines=0;
	public static void main(String[] args) {
		File file=new File("d:\\code");
		File[] files=file.listFiles();
		for(File file:files){
			if(file.getName().matches(".*\\.java$"))
				start(file);
		}
		System.out.println("normalliens="+normallines);
		System.out.println("commentliens="+commentlines);
		System.out.println("whiteliens="+whitelines);
	}
	private static void start(File file) {
		BufferedReader br=null;
		boolean flag=false;
		try {
			br=new BufferedReader(new FileReader(child));
			String line="";
			while((line=br.readLine())!=null){
				line=line.trim();
				if(line.matches("^[\\s&&[^\\n]]*")){
					whitelines++;
				}else if(line.startsWith("/*")&&!line.endsWith("*/")){
					commentlines++;
					flag=true;
				}else if(true==flag){
					commentlines++;
					if(line.endsWith("*/")){
						flag=false;
					}
				}else if (line.startsWith("/*")&&line.endsWith("*/")) {
					commentlines++;
				}else if(line.matches("^//.*")){
					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();
				}
			}
		}	
	}
}
分享到:
评论
5 楼 zhang_xzhi_xjtu 2009-10-27  
大眼一看 程序只支持一层目录
4 楼 YiSingQ 2009-10-06  
哇塞。。。高了这么多的else if。。。程序有点难看
3 楼 luoli-17 2009-10-06  
liu78778 写道


话说那3个变量干嘛用大写, 我第一眼还以为是常量


同感!!!
2 楼 liu78778 2009-10-06  
看那3个静态变量的名称
LZ看来是想统计java源代码中各种代码的行数

话说那3个变量干嘛用大写, 我第一眼还以为是常量
1 楼 quanping 2009-10-06  
程序虽然不长,总该说说你的程序是干嘛的吧?谁有空把每个帖子的程序都看一遍,然后在决定是否跟帖?

相关推荐

    java代码统计程序

    学JAVA的朋友们,你们知道你自己已编过多少行JAVA代码吗?自己写了个统计代码的程序,打包成JAR,有源码,有界面,使用方便。可以统计代码行数、注解行数,及接口、方法、类数,可以分作者统计。

    全国各地城市区号对照表以及自动创建城市java代码

    以下是对这份数据及其Java代码实现的详细解析: 1. **城市区号对照表**: 城市区号对照表是按照省份和地级市的结构组织的,包含了中国的所有主要城市。每个条目包括以下字段: - 区号:例如100(北京)、210...

    国家统计局统计用行政区划代码2020版(全国)

    为更好满足2020年常规统计调查和专项调查的需要,国家统计局组织开展了2019年度统计用区划代码和城乡划分代码更新维护工作,调查时点为2019年10月31日。目前,已完成更新维护工作,现予公布。  2019年统计用区划代码...

    Java中使用数组完成学生成绩统计的多种实现代码清单.pdf

    以下将详细讲解两个不同的Java代码方案,它们利用数组来完成学生成绩的统计。 ### 方案1 这个方案中,使用了一个二维数组`a`来存储学生的三门课程的成绩。数组的每一行代表一个学生,每一列代表一门课程。首先,...

    酒店管理系统JAVA源代码

    q 销售统计:该模块用来分段统计营业额,可以按日、月和年进行统计,其中日统计是按消费单和销售的商品统计销售额,月统计是按日期和每日的销售额统计销售额,年统计是按日期和月份统计销售额。 q 系统安全:该模块...

    c_line_count.rar_c_line_count_visual c_代码 行数_代码统计_代码统计软件

    本文将深入探讨一款自编的C语言代码统计软件,该软件基于Visual C++ 6开发,专用于统计C和CPP文件中的代码行数。通过对代码行数的统计,开发者可以有效地评估项目大小,进行性能分析,以及优化代码结构。 1. **代码...

    JAVA上百实例源码以及开源项目源代码

    Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书 Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java...

    linux-cloc编统计代码的行数

    Linux开发中的`cloc`工具是一款非常实用的代码统计软件,它可以帮助开发者快速地计算出项目中各种类型代码的行数,包括空行、注释行以及不同编程语言的源代码行数。这对于理解项目的规模、评估代码质量、进行代码...

    java编出正态分布的方法

    下面给出了一段Java代码,用于生成服从正态分布的随机数: ```java import java.util.Random; public class GaussianGenerator { private static final Random random = new Random(); // 极坐标法生成正态分布...

    java db 省市区编码表

    这样的数据结构使得程序能够快速地根据区县编码查询到对应的省市区信息,同时也方便进行地域级别的统计和分析。 在开发Java桌面程序时,这个编码表可以被用作后台数据库的一部分,通过连接Java DB(如Derby)来实现...

    JAVA设计的网络考试系统源代码

    本资源是基于JAVA语言设计的一款网络考试系统的源代码,它为在线教育和远程学习提供了便捷的平台。这个系统涵盖了从用户注册、登录、选课、参加考试到成绩查询等一系列功能,旨在实现自动化、高效化的考试流程。以下...

    HMM 模型 JAVA 源代码

    隐马尔可夫模型(Hidden Markov Model,简称HMM)是一种统计建模方法,广泛应用于自然语言处理、语音识别、生物信息学等领域。在Java编程语言中实现HMM可以帮助开发者构建自己的应用或进行相关研究。下面将详细介绍...

    运动会分数统计系统java

    本系统旨在实现对学校运动会比赛成绩的自动化管理与统计,通过Java编程语言开发,能够高效准确地处理运动会的各项比赛成绩数据,为用户提供直观的成绩报告。 ### 二、关键功能点解析 #### 1. 数据结构设计 - **`...

    运动会分数统计数据结构课程设计(含源代码).doc

    "运动会分数统计数据结构课程设计" 该课程设计主要是为了设计一个运动会分数统计系统,能够统计各个学校的分数,并且能够根据学校编号、学校总分、男女团体总分进行排序输出。同时,系统也能够查询学校某个项目的...

    Java 固定资产管理系统

    5. **报表与统计**:通过JFreeChart或iText等库生成各种资产报表,如资产分布图、折旧统计表,帮助企业决策者快速了解资产状况。 6. **通知与提醒**:系统可集成邮件服务(如JavaMail API)发送定期的资产检查提醒...

    在线考试系统完整代码,JAVA源码

    【标题】"在线考试系统完整代码,JAVA源码"揭示了这个项目是一个使用Java编程语言开发的在线考试系统。在IT行业中,Java以其跨平台、面向对象和丰富的库支持而被广泛用于开发各种应用程序,尤其是服务器端应用。在线...

    java的c/s结构的考试通过率统计

    在"java的c/s结构的考试通过率统计"这个主题中,我们将探讨如何使用Java的Swing库来创建客户端应用程序,以及如何设计数据库来存储和查询考试通过率数据。 Swing是Java的标准GUI(图形用户界面)库,提供了一系列...

    利用Java开发合同管理代码

    1. 用户管理 添加,修改,删除系统用户 2. 权限管理 配置系统用户各功能模块的使用权限 3. 后台维护 ...Java版本:jdk1.5或以上版本 应用服务器:tomcat/jboss/weblogic/webshpere等 数据库:oracle9i

    JAVA实验室设备管理系统源码带文档

    - **报表与统计**:系统可能提供设备使用率、借用统计报告,帮助管理层了解设备使用情况,优化资源分配。 - **权限控制**:根据角色不同(管理员、教师、学生),分配不同的操作权限,确保系统安全。 6. **系统...

Global site tag (gtag.js) - Google Analytics