- 浏览: 390255 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
消失-IT超市:
方便加一下你的QQ吗,我的QQ是252375879,有个问题请 ...
js调用ocx控件(读写IC卡) -
mszb00123:
很有用
Extjs之--图片上传器 -
shouhouhuakai:
好崇拜,不错
URLConnection的连接、超时、关闭用法总结 -
wujierd:
写得好详细,学习了
URLConnection的连接、超时、关闭用法总结 -
paruke:
请问这个能加上图片旋转功能么 我试了一下 发现寻找中心点是个问 ...
Extjs之--图片浏览器
1、class
public class FileReadTest { static int codeLines = 0; static int whiteLines = 0; static int commentLines = 0; static int tatolLines = 0; static boolean bComment = false; public static void main(String[] args) { StringBuffer pathName = new StringBuffer("D:\\WorkSpace\\demo\\src\\org\\user\\logic"); ComputeDirectoryAndFiles(pathName, 0); //ComputeNetFiles(pathName); System.out.println("Code Lines : " + (codeLines = tatolLines - commentLines - whiteLines)); System.out.println("White Lines : " + whiteLines); System.out.println("Comment Lines : " + commentLines); } public static void ComputeDirectoryAndFiles(StringBuffer pathName, int level) { File directory = new File(pathName.toString()); File[] files = directory.listFiles(); String prefix = ""; for (int i = 0; i < level; i++) { prefix += "** "; } if (directory.isDirectory()) { for (int i = 0; i < files.length; i++) { if (files[i].isFile() && files[i].getName().matches("^[a-zA-Z[^0-9]]\\w*.java$")) { computeLines(files[i]); } if (files[i].isDirectory()) { pathName.append("/" + files[i].getName()); level++; ComputeDirectoryAndFiles(pathName, level); int start = pathName.toString().length() - files[i].getName().length() - 1; int end = pathName.toString().length(); pathName.delete(start, end); level--; } } } } public static void ComputeNetFiles(StringBuffer netPath){ try { File netDir = new File(netPath.toString()); File[] files = netDir.listFiles(); for(int i=0;i<files.length;i++){ System.out.println(":"+files[i].getName()); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void computeLines(File file) { BufferedReader bf = null; try { bf = new BufferedReader(new FileReader(file)); String lineStr = ""; while ((lineStr = bf.readLine()) != null) { // 总行数 tatolLines++; // 计算空行 whiteLines(lineStr); // 统计代码行数 commendLines(lineStr); // 计算代码的行数 // codeLines(lineStr); } } catch (FileNotFoundException e) { System.out.println("文件没有找到"); } catch (IOException ee) { System.out.println("输入输出异常 "); } finally { if (bf != null) { try { bf.close(); bf = null; } catch (Exception e) { System.out.println("关闭BufferReader时出错"); } } } } public static void whiteLines(String lineStr) { if (lineStr.matches("^[\\s&&[^\\n]]*$")) { whiteLines++; } } public static void commendLines(String lineStr) { // 判断是否是一个注释行 // 这里是单行注释的如 /*..... */或/**.... */ if (lineStr.matches("\\s*/\\*{1,}.*(\\*/).*")) { commentLines++; } /** * 这里是多行注释的 */ // 这里的是当开始为/**或/*但是没有 */ 关闭时 else if (lineStr.matches("\\s*/\\*{1,}.*[^\\*/].*")) { commentLines++; bComment = true; } else if (true == bComment) { commentLines++; if (lineStr.matches("\\s*[\\*/]+\\s*")) { bComment = false; } } else if (lineStr.matches("^[\\s]*//.*")) { commentLines++; } } }
发表评论
-
不负时光,继续学习
2017-04-11 17:04 6474月,一年当中最好的时节,和风煦日春意浓; ... -
生活依旧,做好自己
2017-02-04 16:51 429新年开工第二天,工作之余翻看了电脑上以前的文 ... -
2016年最后一天随笔
2016-12-30 14:48 5952016年马上就要过去了,回顾过去的一年感 ... -
excel中汉字转拼音全拼和简拼
2016-09-12 11:45 1623一、汉字转全拼 1.启动Excel 2003(其它版本请仿 ... -
年底总结3-工作中遇到的错误及解决方式
2015-02-16 11:28 1040在过去的一年工作中遇到的一些问题及解决方式,如下: -- ... -
数据库方面遇到的问题总结
2013-05-23 20:29 10131、mysql服务自动关闭处理方式 我的电脑 -> ... -
resin2.1.17报错:META-INF/c.tld:6 unknown element `xsi:schemaLocation' in `taglib'
2012-08-20 18:37 30741、问题描述 resin启动后,访问jsp页面 ... -
Extjs grid 合计
2012-05-31 14:28 19131、直接在客户端统计,动态的修改Grid 2、代码如下 ... -
mysql函数使用-字符串处理
2012-05-29 17:15 11851、按地区统计数据 select q.psn,t.na ... -
spring JdbcTemplate 批量插入
2012-05-27 09:13 20471、通过批量操作减少与数据库连接所消耗的资源。 2、J ... -
JDBC连接Sql server
2012-03-07 10:24 17081、采用微软提供的ms sql server jdbc dri ... -
java下将汉字转换为拼音
2012-01-15 18:06 12091、代码如下,不过有些汉字不支持,如:茜 import ... -
年底总结2-spring多线程任务调度
2012-01-01 13:55 54591、spring framework开发参考手册中第23掌& ... -
年底总结1-tomcat6使用中遇到的问题
2012-01-01 10:23 65751、tomcat6.0.18注册windows服务成功后,但是 ... -
VML应用-利用ECOTree绘制树形结构图
2011-10-29 17:57 63991、基本概念 VML的全称是Vector Markup La ... -
java串口编程-读取称重仪表中净重
2011-10-12 17:08 5190一、需求说明 ... -
记录oracle 关联更新的例子
2011-10-03 20:55 11561、说明 修改某一天“本期值”数据时,需要把第二天的“上期值 ... -
js--设为首页、加入收藏
2011-03-19 00:13 978<a onclick="this.style. ... -
org.hibernate.ObjectNotFoundException: No row with the given identifier exists
2011-03-08 00:19 20881、问题说明 hibenate中实体关联映射中<man ... -
VirtualBox网络配置-搭建数据库服务器
2011-02-10 23:50 31601、由于操作系统与数据库之间兼容性的问题,于是采用在虚拟机上安 ...
相关推荐
Java实现的SVN统计修改代码行数的源码解析 在软件开发过程中,代码行数(LOC,Lines of Code)经常被用作评估项目规模、工作量和复杂度的一个指标。对于版本控制系统如Subversion(SVN),了解每次提交中修改的代码...
"统计代码行数"则涉及到代码分析,这是一种衡量软件规模和复杂性的方式,有助于理解代码的改动对项目的影响。 【文件列表解析】 `.classpath`和`.project`是Eclipse IDE的配置文件,它们包含关于项目的构建路径和...
因此,统计Java代码行数时需要考虑空行、注释以及嵌套结构。 3. **工具选择**:常见的代码行数统计工具有CLOC(Count Lines of Code)、SLOCCount、NCSS(Non-Commented Source Statements)等。这些工具不仅计算...
在编程和软件开发中,了解项目中的代码行数是一个重要的度量标准,它可以帮助我们评估项目的规模、复杂性以及维护成本。本教程将详细介绍如何使用名为"CountLines.exe"的工具来统计源代码的行数。 一、代码行数统计...
例如,如果你有一个名为"my_project"的目录,你可以运行"linecount my_project"来获取该目录下所有代码的统计信息。工具通常会返回总代码行、空行、注释行等关键数据。 值得注意的是,虽然代码行数是一个直观的度量...
为了计算一个文件或整个项目中的代码行数,我们可以编写一个简单的Java程序来遍历目录结构,识别源代码文件,并统计其中的行数。 在Java中,我们可以使用`java.io.File`类来处理文件和目录。通过`listFiles()`方法...
在Java编程中,有时我们需要统计一个项目中的源代码文件的各种指标,例如文件的总行数、代码行数、注释行数以及空行数。这个任务可以通过创建一个工具类来实现,具体步骤如下: 首先,定义一个名为`JavaCode`的类,...
总的来说,"projectCodeInfo_plugins.rar"提供的工具简化了Java项目的代码量统计过程,使得开发者无需手动计数,就能快速获取项目的量化指标。通过与Eclipse的无缝集成,开发团队可以更有效地管理和优化他们的代码库...
- **编写代码**:在Eclipse中编写Java代码时需遵循以下规则: - 每个Java类必须位于一个包内。 - 代码示例: ```java package xu.cs.demo; public class Hello { public static void main(String[] args) { ...
pygount是一款Python编写的源代码统计工具,它能够帮助开发者统计项目中不同语言的代码行数,包括注释和空行。这对于代码审计、项目维护、度量软件复杂性等工作非常有用。pygount支持多种编程语言,包括但不限于...
- **行覆盖率**:已执行的代码行数占总代码行数的比例。 - **分支覆盖率**:已执行的条件分支数占总条件分支数的比例。 - **方法覆盖率**:已执行的方法数占总方法数的比例。 - **类覆盖率**:已执行的类数占总类数...
CodeUtils 代码工具,一键自动生成完整代码。 JavaProject ,属于编译时(ButterKnife等框架属于运行时)工具。 原理是根据功能需要生成代码文本,然后利用FileIO流写入到文件中。...获取项目代码行数(统计全部.xml和.java
- **Project**:项目,在Eclipse中指的是一组相关的源代码文件集合,通常包含源代码、资源文件、构建设置等。 - **Folder**:文件夹,用于组织和管理文件与项目。 - **Import**:导入功能,允许用户将已存在的代码...
JXR 插件用于生成 Java 源代码的交叉引用,这样在 Checkstyle 报告中点击问题行数时,可以直接跳转到源代码。同样在 `<reporting>` 部分添加 JXR 插件配置。 ```xml <groupId>org.apache.maven.plugins ...
Eclipse JDBC 连接 MySQL 指南 Eclipse 是一个流行的集成开发环境(IDE),它支持多种编程语言,包括 Java。JDBC(Java Database Connectivity)是 Java ...这些参数可以根据需要进行配置,以便获得更好的连接体验。
【JDBC_Project_B18】是一个关于Java数据库连接(JDBC)的项目,适用于批次18的学习者。这个项目旨在帮助开发者深入理解如何使用Java语言与各种关系型数据库进行交互,包括数据的增删改查操作。JDBC是Java平台的标准...
第12章:编写自定义插件/12.3 编写插件实例:统计代码行数/12.3.2 实现AbstractMojo类 第12章:编写自定义插件/12.3 编写插件实例:统计代码行数/12.3.3 实例完整源代码 第12章:编写自定义插件/12.3 编写插件实例:...
【14】工具集成——编译器集成例子(Java、Borland C++、Visual C++、Inno Setup、nsis、C#) 【15】工具集成——让Editplus调试PHP程序———————-avenger,aukw 【16】工具集成——打造 PHP 调试环境(二)——...