我正在开发一个工具来分析和统计其他人的源代码,该工具将能够识别代码中的许多东西!现在我被困在计算代码评论的数量上,我当前的代码是:
public static void main(String[] args) {
String line = "";
int count = 0;
try {
BufferedReader br = new BufferedReader(new FileReader("comments.txt"));
while ((line = br.readLine()) != null) {
if (line.startsWith("//")) {
count++;
} else if (line.startsWith("/*")) {
count++;
while (!(line = br.readLine()).endsWith("'*\'")) {
count++;
break;
}
}
}
br.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("count=" + count);
}
为了检查代码,我使用了一个测试文件。但是,例如,代码在两个文件中都给了我错误的结果;我在以下文件中得到三个
Yes
//comment
yes
yes
/*
if
random
test
test
*/
虽然答案应该是两条评论!
在下面的文件中,它显示我有五个评论,而实际上我还有两个
Yes
//comment
yes
yes
/*
if
random
test
test
/*
*/