第一次作业 目标1修改版

来源:互联网 发布:java客户端之间通信 编辑:程序博客网 时间:2024/06/10 14:29
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 whiteLines = 0;private static int commentLines = 0;private static int normalLines = 0;private static long totalLine = 0; public static void main(String[] args) {File f = new File("C:\\Users\\Administrator\\Workspaces\\MyEclipse 8.5\\xiaopeng\\src\\StaticsCodeingLine.java"); sumCode(f);}private static 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 { System.out.println("空行数:"+whiteLines);System.out.println("注释行数:"+commentLines);System.out.println("代码行数:"+normalLines);System.out.println("总行数:"+(whiteLines+commentLines+normalLines));br.close(); br = null; } catch (IOException e) { e.printStackTrace(); } } } }}

0 0
原创粉丝点击