今天想试试学了很久的正则表达式,就编了一个小小的程序(朋友们要是有意见就提吧):
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();
}
}
}
}
}
分享到:
- 2009-10-04 20:57
- 浏览 1156
- 评论(5)
- 论坛回复 / 浏览 (5 / 2649)
- 查看更多
相关推荐
学JAVA的朋友们,你们知道你自己已编过多少行JAVA代码吗?自己写了个统计代码的程序,打包成JAR,有源码,有界面,使用方便。可以统计代码行数、注解行数,及接口、方法、类数,可以分作者统计。
以下是对这份数据及其Java代码实现的详细解析: 1. **城市区号对照表**: 城市区号对照表是按照省份和地级市的结构组织的,包含了中国的所有主要城市。每个条目包括以下字段: - 区号:例如100(北京)、210...
为更好满足2020年常规统计调查和专项调查的需要,国家统计局组织开展了2019年度统计用区划代码和城乡划分代码更新维护工作,调查时点为2019年10月31日。目前,已完成更新维护工作,现予公布。 2019年统计用区划代码...
以下将详细讲解两个不同的Java代码方案,它们利用数组来完成学生成绩的统计。 ### 方案1 这个方案中,使用了一个二维数组`a`来存储学生的三门课程的成绩。数组的每一行代表一个学生,每一列代表一门课程。首先,...
q 销售统计:该模块用来分段统计营业额,可以按日、月和年进行统计,其中日统计是按消费单和销售的商品统计销售额,月统计是按日期和每日的销售额统计销售额,年统计是按日期和月份统计销售额。 q 系统安全:该模块...
本文将深入探讨一款自编的C语言代码统计软件,该软件基于Visual C++ 6开发,专用于统计C和CPP文件中的代码行数。通过对代码行数的统计,开发者可以有效地评估项目大小,进行性能分析,以及优化代码结构。 1. **代码...
Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书 Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java...
Linux开发中的`cloc`工具是一款非常实用的代码统计软件,它可以帮助开发者快速地计算出项目中各种类型代码的行数,包括空行、注释行以及不同编程语言的源代码行数。这对于理解项目的规模、评估代码质量、进行代码...
下面给出了一段Java代码,用于生成服从正态分布的随机数: ```java import java.util.Random; public class GaussianGenerator { private static final Random random = new Random(); // 极坐标法生成正态分布...
这样的数据结构使得程序能够快速地根据区县编码查询到对应的省市区信息,同时也方便进行地域级别的统计和分析。 在开发Java桌面程序时,这个编码表可以被用作后台数据库的一部分,通过连接Java DB(如Derby)来实现...
本资源是基于JAVA语言设计的一款网络考试系统的源代码,它为在线教育和远程学习提供了便捷的平台。这个系统涵盖了从用户注册、登录、选课、参加考试到成绩查询等一系列功能,旨在实现自动化、高效化的考试流程。以下...
隐马尔可夫模型(Hidden Markov Model,简称HMM)是一种统计建模方法,广泛应用于自然语言处理、语音识别、生物信息学等领域。在Java编程语言中实现HMM可以帮助开发者构建自己的应用或进行相关研究。下面将详细介绍...
本系统旨在实现对学校运动会比赛成绩的自动化管理与统计,通过Java编程语言开发,能够高效准确地处理运动会的各项比赛成绩数据,为用户提供直观的成绩报告。 ### 二、关键功能点解析 #### 1. 数据结构设计 - **`...
"运动会分数统计数据结构课程设计" 该课程设计主要是为了设计一个运动会分数统计系统,能够统计各个学校的分数,并且能够根据学校编号、学校总分、男女团体总分进行排序输出。同时,系统也能够查询学校某个项目的...
5. **报表与统计**:通过JFreeChart或iText等库生成各种资产报表,如资产分布图、折旧统计表,帮助企业决策者快速了解资产状况。 6. **通知与提醒**:系统可集成邮件服务(如JavaMail API)发送定期的资产检查提醒...
【标题】"在线考试系统完整代码,JAVA源码"揭示了这个项目是一个使用Java编程语言开发的在线考试系统。在IT行业中,Java以其跨平台、面向对象和丰富的库支持而被广泛用于开发各种应用程序,尤其是服务器端应用。在线...
在"java的c/s结构的考试通过率统计"这个主题中,我们将探讨如何使用Java的Swing库来创建客户端应用程序,以及如何设计数据库来存储和查询考试通过率数据。 Swing是Java的标准GUI(图形用户界面)库,提供了一系列...
1. 用户管理 添加,修改,删除系统用户 2. 权限管理 配置系统用户各功能模块的使用权限 3. 后台维护 ...Java版本:jdk1.5或以上版本 应用服务器:tomcat/jboss/weblogic/webshpere等 数据库:oracle9i
- **报表与统计**:系统可能提供设备使用率、借用统计报告,帮助管理层了解设备使用情况,优化资源分配。 - **权限控制**:根据角色不同(管理员、教师、学生),分配不同的操作权限,确保系统安全。 6. **系统...