import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.List;/*** *********************************************** @description 计算源代码(src)行数,不计算空行*     宗旨:将src下所有文件组装成list,再筛选出文件,对文件进行遍历读取* @author gumutianqi* @date 2011-05-30   2:00:12 PM* @version 1.0************************************************/
public class LineCounter {List<File> list = new ArrayList<File>();int linenumber = 0;FileReader fr = null;BufferedReader br = null;public void counter(String projectName) {
//        String path = System.getProperty("user.dir");String path = LineCounter.class.getResource("/").getPath();  // 同下个pathpath = path.substring(0, path.length() - 24) + projectName + "/src";System.out.println(path);File file = new File(path);File files[] = null;files = file.listFiles();addFile(files);isDirectory(files);readLinePerFile();System.out.println("Totle:" + linenumber + "行");}// 判断是否是目录public void isDirectory(File[] files) {for (File s : files) {if (s.isDirectory()) {File file[] = s.listFiles();addFile(file);isDirectory(file);continue;}}}//将src下所有文件组织成listpublic void addFile(File file[]) {for (int index = 0; index < file.length; index++) {list.add(file[index]);// System.out.println(list.size());}}//读取非空白行public void readLinePerFile() {try {for (File s : list) {int yuan = linenumber;if (s.isDirectory()) {continue;}fr = new FileReader(s);br = new BufferedReader(fr);String i = "";while ((i = br.readLine()) != null) {if (isBlankLine(i))linenumber++;}System.out.print(s.getName());System.out.println("\t\t有" + (linenumber - yuan) + "行");}} catch (Exception e) {e.printStackTrace();} finally {if (br != null) {try {br.close();} catch (Exception e) {}}if (fr != null) {try {fr.close();} catch (Exception e) {}}}}//是否是空行public boolean isBlankLine(String i) {if (i.trim().length() == 0) {return false;} else {return true;}}public static void main(String args[]) {LineCounter lc = new LineCounter();String projectName = "testProject";      //这里传入你的项目名称lc.counter(projectName);}
}
注意:最后的Main方法要传入你要统计的项目名称

转载于:https://www.cnblogs.com/gumutianqi/archive/2011/05/31/LineCounter.html

发一个统计项目代码行数的Java代码相关推荐

  1. phpstrom查看代码总行数_PHP统计代码行数的小代码

    本文实例为大家分享了PHP统计代码行数的具体代码,供大家参考,具体内容如下 想统计一下项目中一共有多少行代码,结果没找到什么好的工具,就自己写了一个. 效率不怎么样. /** * Created by ...

  2. Git统计代码行数;Java实现统计代码行数,忽略空行、注释行

    前言 某天,产品叫我算下某个项目的代码行数,我一愣,这怎么统计?总不可能一个文件一个文件算吧?后面我找了下,git是可以统计提交到仓库的所有的代码的,不过有个问题,就是假如有些文件我不想算进去怎么办? ...

  3. 在项目开发中统计代码行数的6种方式

    文章目录 一.使用find和wc命令统计代码行数 进行参数的过滤筛选 命令参数简要说明 二.PowerShell工具统计代码行数 条件过滤 输出所有文件的行数 PowerShell相关命令的简要说明 ...

  4. 【git】Git 指令统计代码行数

    目录 统计代码行数 加过滤条件 统计代码行数 统计当前项目代码行数 git ls-files | xargs cat | wc -l 细分每个文件的代码行数,相当于把上面命令细化: git ls-fi ...

  5. java 输出定位代码行_指定一个.java文件,输出其代码行数

    CountList2.java//用来统计java代码行数 import java.io.BufferedReader; import java.io.File; import java.io.Fil ...

  6. 使用PYTHON统计项目代码行数

    目录 一 使用PYTHON统计项目代码行数 二 应用实例 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 使用PYTHON统计项目代码行数 遇到一个非常小的需求:统计一个项目里头的各类源代码 ...

  7. python项目代码量_python统计项目代码行数

    stat.py #!/usr/bin/env python3 # -*- coding: utf-8 -*- import chardet import os import sys # 定义注释的格式 ...

  8. Intellij idea利用Statistic插件统计项目代码行数

    1 . 插件介绍 统计项目中各个文件的数量,大小,行数,平均等信息 根据扩展名自定义统计详细行数信息 , 包括总行数,代码行数,代码行数占比,注释行数,注释行数占比,空白行数,空白行数占比 自定义选择 ...

  9. python 代码行数统计工具_使用Python设计一个代码统计工具

    问题 设计一个程序,用于统计一个项目中的代码行数,包括文件个数,代码行数,注释行数,空行行数.尽量设计灵活一点可以通过输入不同参数来统计不同语言的项目,例如: # type用于指定文件类型 pytho ...

最新文章

  1. python培训比较好的机构-学Python哪个机构好?老男孩Python培训班
  2. python 画风场 scipy_科学网-Python: 扩展库SciPy-刘洋洋的博文
  3. 重庆三峡学院计算机应用技术,重庆三峡学院 数学与计算机学院 刘福明老师简介 联系方式 手机电话 邮箱...
  4. ISO13485 相关
  5. make pycaffe 报错:“fatal error: numpy/arrayobject.h: No such file or directory” 解决方案
  6. E9表单按钮置灰功能与单元格自定义属性说明
  7. C++语言学习(十六)——多继承
  8. Base64 的 JavaScript 实现 js-base64
  9. 朱光潜:要有悲剧,才能算人生
  10. node.js(一)基础介绍
  11. CAD图清晰打印设置
  12. 远程过程调用失败而且未执行怎么办
  13. Fuchsia编译与真机安装
  14. css实现固定的图片比例
  15. 【python】-- paramiko、跳板机(堡垒机)
  16. iptables匹配multiport
  17. 未检测到与wia兼容的设备_WIA-TWAIN 兼容性
  18. 最近做code review的5点经验分享
  19. postgre下备份还原
  20. 锐浪(Grid++Report)报表脚本通过某些字段隐藏控件

热门文章

  1. 国内电商场景大战中,企业如何寻找有效增长点?这里有答案了
  2. 译文| 相信指标还是相信经验?
  3. 编译x86架构的openwrt系统,让笔记本从u盘启动openwrt
  4. ELK logstash 配置自定义字段为索引
  5. 如何在Windows 10中创建电源选项快捷图标,快速设置笔记本电脑的节能模式
  6. 手把手系列:(一)用Benchmarksql测试Oracle数据库性能
  7. 在fedora23中安装virtualbox, 然后实现虚拟机irtualbox 或者 vmware 下的xp操作系统
  8. c# 调用c++DLL方法及注意事项
  9. STC12C5A60S2笔记8(串口)
  10. win7(64)与samba不兼容