我想计算程序中的代码行数,并且我已经为此编写了计算;
. 它可以正常工作,但在某些情况下(例如没有;
存在的情况下(例如if
和while
语句))就不行。在这种情况下,我将一些关键字存储在一个字符串数组中,我想使用readLine()
. 如果它工作正常,那么我会将它增加 1,但它不起作用。我已经尝试了很多,但它根本不起作用,并且显示异常。因为Demo.java
您可以使用自己的代码。
类检测1.java
import java.io.*;
public class Classdetect1
{
public static void main(String[] args) throws IOException
{
int i=0,j=0,k=0,p;
String str1[]={"if","else","else if","while","for","goto","do"};
// Open the file
FileInputStream fstream = new FileInputStream("Demo.java");
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
if (in == null){
System.out.println("File is blank");
System.exit(0);
}
while (i != -1)
{
i = in.read();
if(i==';' || i=='{')
{
j=j+1;
}
if(i=='\'')
{
while(in.read()!='\'')
continue;
}
if(i=='\"')
{
while(in.read()!='\"')
continue;
}
if(i=='(')
{
while(in.read()!=')')
continue;
}
while ((strLine = br.readLine()) != null)
{
for(p=0;p<7;p++)
{
if(str[p].equals(strLine))
{
k=k+1;
}
}
}
System.out.println("Line of =" + k);
}
System.out.println("Total Line of code=" + j);
}
}