查询项目行数
来源:互联网 发布:灯珠花 淘宝 编辑:程序博客网 时间:2024/05/17 02:24
package com;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
/**
*
*
*
* @author LC
*
*
*
*/
public class CountCodes {
static long normalLines = 0; // 空行
static long commentLines = 0; // 注释行
static long whiteLines = 0; // 代码行
public static void main(String[] args) {
CountCodes sjc = new CountCodes();
File f = new File(
"D://workspace//gqt//src");// 目录
System.out.println(f.getName());
sjc.treeFile(f);
System.out.println("空行:" + normalLines);
System.out.println("注释行:" + commentLines);
System.out.println("代码行:" + whiteLines);
}
/**
*
* 查找出一个目录下所有的.java文件
*
*
*
* @param f
* 要查找的目录
*
*/
private void treeFile(File f) {
File[] childs = f.listFiles();
// int count = 0;
// int sum = 0;
for (int i = 0; i < childs.length; i++) {
// System.out.println(preStr + childs[i].getName());
if (!childs[i].isDirectory()) {
if (childs[i].getName().matches(".*//.java$")) {
System.out.println(childs[i].getName());
// count ++;
sumCode(childs[i]);
}
} else {
treeFile(childs[i]);
// sum += count;
}
}
}
/**
*
* 计算一个.java文件中的代码行,空行,注释行
*
*
*
* @param file
*
* 要计算的.java文件
*
*/
private void sumCode(File file) {
BufferedReader br = null;
boolean comment = false;
try {
br = new BufferedReader(new FileReader(file));
String line = "";
try {
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 (true == comment) {
commentLines++;
if (line.endsWith("*/")) {
comment = false;
}
} else if (line.startsWith("// ")) {
commentLines++;
} else {
normalLines++;
}
}
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
br = null;
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
- 查询项目行数
- 查询某个项目的代码行数
- iOS开发- 查询项目代码行数
- iOS开发- 查询项目代码行数
- mysql查询当前行数
- SQLSERVER 查询行数优化
- 日志查询-统计行数
- iOS 项目行数统计
- sql 查询重复行数据
- 查询每个表的行数
- Sqlite3查询指定行数数据
- sql 查询重复行数据
- sql 查询重复行数据
- Sqlite3查询指定行数数据
- Sqlite3查询指定行数数据
- mysql查询指定行数据
- db2查询行数的限制
- XCODE 脚本:项目行数统计
- jQuery对象与DOM对象之间的转换(转自:http://wozailongyou.iteye.com/blog/299311)
- [详解+多图]Android开发环境搭建超级详细
- LiveZilla 详细 配置 设置 (三) 配置 LiveZilla 服务
- C/S与B/S的特点及测试的侧重点各是什么?(转)
- 浅谈JSON
- 查询项目行数
- Android系列教程(六) adb操作命令详解
- Video4Linux2 part 7: Controls
- Java 设计者 谈Java设计 (The Java Language Environment)
- 为什么我的迷你博客里显示乱码
- “ORA-06413:连接未打开”问题解决了,大家引以为戒吧
- flash与javacript:图片交互
- 好网站不是由采用哪种语言决定成功与否的
- Android平台中应该如何获取音乐文件的信息