java判断一个文件有多少行_Java关于条件判断练习--统计一个src文件下的所有.java文件内的代码行数(注释行、空白行不统计在内)...
要求:统计一个src文件下的所有.java文件内的代码行数(注释行、空白行不统计在内)
分析:先封装一个静态方法用于统计确定的.java文件的有效代码行数。使用字符缓冲流读取文件,首先判断是否是块注释开头,接着判断是否是块注释结尾,再判断是否是单行注释或者空白行,若都不是则是有效代码,统计行数+1。
对于文件夹路径,采用递归的方法判断子条目是文件还是文件夹,是文件就调用静态统计方法。源代码:
public class CalculateRow {
public static void main(String[] args) {
/* File file = new File("D:\\web\\zuoye\\src\\test\\CalculateRow.java") ;
calculaterow(file) ;*/
File newfile = new File("D:\\web\\zuoye\\src") ;
calculateFile(newfile) ;
File[] files = newfile.listFiles() ;
/* for(File f: files){
System.out.println(f);
}*/
/* int sum = 0 ;
for (int i = 0; i < files.length; i++) {
if(files[i].isDirectory()){
File[] filesi = files[i].listFiles() ;
for (int j = 0; j < filesi.length; j++) {
int num = calculaterow(filesi[j]);
sum+=num ;
}
}else{
int num = calculaterow(files[i]);
sum+= num ;
}
}
System.out.println(newfile+"文件夹下的文件的代码行数总共有:"+sum);*/
}
public static void calculateFile(File ff){
int sum =0 ;
if(ff.isDirectory()){
File[] files = ff.listFiles() ;
for(File f1: files){
if(f1.isDirectory()){
calculateFile(f1) ;
}else{
int num =calculaterow(f1) ;
sum +=num ;
}
}
System.out.println(ff+"文件夹下的所有文件的代码行数总共:"+sum);
}else if(ff.isFile()) {
int num = calculaterow(ff) ;
sum +=num ;
System.out.println(ff+"文件下的所有文件的 代码行数总共:"+sum);
}else{
System.err.println("输入的文件地址格式不对");
}
}
public static int calculaterow(File f){
int num= 0 ;
if(f.isFile()){
try {
BufferedReader br = new BufferedReader(new FileReader(f)) ;
String str ;
boolean flag = false ;
while((str=br.readLine())!=null){
String newstr = str.trim() ;
if(newstr.startsWith("/*")){
flag =true ;
}else if (newstr.endsWith("*/")){
flag = false ;
}
else if(newstr.startsWith("//")||newstr.length()==0){
num+=0 ;
}else if(!flag){
num+=1 ;
}
}
} catch (Exception e) {
e.printStackTrace();
}
}else {
System.out.println("不是文件!");
}
System.out.println(f+"文件的代码行数是:"+num);
return num;
}
}
截图:
java判断一个文件有多少行_Java关于条件判断练习--统计一个src文件下的所有.java文件内的代码行数(注释行、空白行不统计在内)...相关推荐
- Python编程 统计Java源文件代码行数,注释行数,空白行数
每次学习新的语言,就想重新实现一遍做过的课设=,= 这里实现的是"综合性实验 Java源代码分析程序"的第三部分 第二部分见:[Python编程]统计目录下Java源文件的关键字出 ...
- .net一个函数要用另一个函数的值_Mysql:条件判断函数-CASE WHEN、IF、IFNULL详解
前言 在众多SQL中,统计型SQL绝对是让人头疼的一类,之所以如此,是因为这种SQL中必然有大量的判读对比.而条件判断函数就是应对这类需求的利器.本文重点总结CASE WHEN.IF.IFNULL三种 ...
- python判断语句入门教程_Python中的条件判断语句基础学习教程
if语句用来检验一个条件, 如果 条件为真,我们运行一块语句(称为 if-块 ), 否则 我们处理另外一块语句(称为 else-块 ). else 从句是可选的. 使用if语句: ? 输出: ? 在这 ...
- python 条件语句判断连续三个数,Python_3_流程控制语句:条件判断语句(if语句),循环语句,嵌套...
第三章 流程控制语句 简介 Python代码在执行时是按照自上向下顺序执行的. 通过流程控制语句,可以改变程序的执行顺序,也可以让指定的程序反复执行多次 流程控制语句分成两大类:条件判断语句,循环语句 ...
- python for循环连续输入五个成绩判断等级_Python 入门(五)条件判断和循环
有的时候,一个 if ... else ... 还不够用.比如,根据年龄的划分: 条件1:18岁或以上:adult 条件2:6岁或以上:teenager 条件3:6岁以下:kid 我们可以用一个 if ...
- python循环数组判断,python的数据类型、数组、条件判断、循环的基础知识
一.数据类型 最常见的数据类型有:整型(int),浮点型(float),字符串(strs).例如: #整型 a=8 #浮点型 b=8.0 #字符串 c='hello world'. 数据类型的转 ...
- mysql 查询后根据值的不同进行判断与修改,SQL中的条件判断语句(case when zhen)用法
需求: mysql 查询后根据值的不同进行判断与修改 语法结构: SQL中的条件判断语句(case when zhen)用法 SELECT A.品号,属性, CASE ...
- c语言常用条件判断,C语言菜鸟基础教程之条件判断
(一)if...else 先动手编写一个程序 #include int main() { int x = -1; if(x > 0) { printf("x is a positive ...
- python基本判断语句_python两种简洁的条件判断语句写法
了Python返回真假值(True or False)小技巧,本文探讨的是最简洁的条件判断语句写法,本文给出了两种简洁写法,需要的朋友可以参考下 如下一段代码:def isLen(strString) ...
最新文章
- python中mid_使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)...
- 大竹中学2021高考成绩查询,2021年大竹中学升学率高不高?
- Part1_3 python字符串,列表,元组,字典
- Mysql清理binlog日志
- PhpStorm快捷键
- C# 温故而知新:Stream篇(—)
- How is S4 Material extened controller loaded
- 时间 '2018-08-06T10:00:00.000Z' 格式转化为本地时间(转)
- 【两种方式】用python和ENVI画出高光谱遥感影像的3D立体图
- 考上一级建造师很牛吗?让我从一个屌丝技术员到项目经理
- 软件架构师的12项修炼[4]—个人技能修炼(2)—激情
- win10桌面计算机快捷没了,大神帮您win10系统桌面计算机快捷图标不见了的技巧...
- 透明贴图原理--浅显易懂
- 港澳台、大陆身份证正则表达式
- USB1.0 2.0区别
- java编程基础笔记_Java编程基础阶段笔记 day01 Java语言概述
- 第二阶段-面向对象(四)
- WF2011 Chips Challenge
- 【鸿蒙 HarmonyOS】HarmonyOS 开发环境搭建 ( 下载 | 安装 | 启动 | 支持的设备与开发语言 )
- Sixth week blog3