java统计代码行数
来源:互联网 发布:微信公众号淘宝优惠券 编辑:程序博客网 时间:2024/05/22 13:16
import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.util.ArrayList;import java.util.List;/** * description: 统计代码行数 * @author xyc 创建时间:2014-7-24 * @Copyright(c)2014:北京中百信软件技术有限公司 */public class Test {List<File> list = new ArrayList<File>();int linenumber = 0;FileReader fr = null;BufferedReader br = null;public void counter(String projectName) {projectName = projectName + File.separator + "src";System.out.println(projectName);File file = new File(projectName);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]);}}//读取非空白行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[]) {Test lc = new Test();String projectName = "D:/workspace/paytest4/payment";lc.counter(projectName);}}
大家可以加QQ群:100162042
0 0
- 统计java代码行数
- Java统计代码行数
- JAVA统计代码行数
- java统计代码行数
- java代码行数统计
- java 统计代码行数
- java代码行数统计工具
- java实现统计代码行数
- 统计Java项目代码行数
- 统计java代码行数工具
- java代码行数统计工具
- Java代码行数的统计
- 统计java代码的行数
- Java统计脚本代码行数
- 项目代码行数统计--java类统计
- 统计你写的java代码行数
- 统计你写的java代码行数
- 统计文件夹下java代码行数
- C++ 拷贝构造函数 赋值构造函数
- Java编程思想(十六) —— 联系JVM再谈Class
- 升级到最新xcode,在使用AFNetworking时遇到了 property synthesis 相关的 error
- App适配iPhone 6/ Plus和iOS 8:10条小秘诀
- 【网络安全】Snort漏洞分析规则提取验证全流程讲述
- java统计代码行数
- web项目的性能分析
- debounce函数
- Android之仿今日头条顶部导航栏效果
- 简单的ant打包,修改渠道号
- 五级工程师分享之学习2015.01.09
- C#多线程(四)
- SVN服务器的搭建和使用
- CornerStone的使用和安装