课程实验一:目标一:输出该目录下指定类型文件(.cs, .java)的个数、文件的总行数、空行数、注释行数、代码行数
2015-05-29 16:40
941 查看
import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; public class StaticsCodeingLine { private static int BlankLine=0; private static int CommentLine=0; private static int CodeLine=0; private static int SumLine=0; public static void main(String[] args) { File f = new File("C:/Users/Administrator/Workspaces/MyEclipse 8.5/dhed/src/StaticsCodeingLine.java"); sumCode(f); } private static void sumCode(File file) { BufferedReader br = null; try { br = new BufferedReader(new FileReader(file)); String line = ""; try { while ((line = br.readLine()) != null) { line = line.trim(); SumLine++; boolean flag = false; if (line.matches("^[\\s&&[^\\n]]*$")) { BlankLine++; } else if (line.startsWith("/*") && !line.endsWith("*/")) { CommentLine++; flag = true; } else if (flag==true) { CommentLine++; if (line.endsWith("*/")) { flag = false; } } else if (line.startsWith("//")) { CommentLine++; } else { CodeLine++; } } } catch (IOException e) { e.printStackTrace(); } } catch (FileNotFoundException e) { e.printStackTrace(); } finally { if (br != null) { try { System.out.println("空行数:"+BlankLine); System.out.println("注释行数:"+CommentLine); System.out.println("代码行数:"+CodeLine); System.out.println("总行数:"+SumLine); br.close(); br = null; } catch (IOException e) { e.printStackTrace(); } } } } }
相关文章推荐
- 初学WEB项目,第一个增删改查的Demo,框架=SpringMVC
- Java安全之公钥与私钥
- java8 之默认方法
- Spring事务
- java中多线程笔记(一)
- Eclipse 3.7手工安装Maven2的插件(包含POM图形编辑工具)
- Java线程问题
- JAVA开发_发送邮件
- Java 中正确使用 hashCode 和 equals 方法
- Java 中正确使用 hashCode 和 equals 方法
- Java 中正确使用 hashCode 和 equals 方法
- Java 中正确使用 hashCode 和 equals 方法
- Java 中正确使用 hashCode 和 equals 方法
- java 第一次作业(修改版)
- MyEclipse中Jboss启动出现Java heap space解决方案
- Java堆内存富余却疯狂FullGc问题排查
- Build self-healing distributed systems with Spring Cloud
- java字符串公共字母的提取
- Struts2拦截器工作原理
- Java 内省机制