源代碼行數(shù)統(tǒng)計(jì)器 1.5
成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比益陽網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式益陽網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋益陽地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴。
本軟件用于統(tǒng)計(jì)軟件工程源代碼行數(shù),可對(duì)指定的子目錄下或整個(gè)目錄樹中所有指定類型的源代碼文件進(jìn)行行數(shù)統(tǒng)計(jì)。
本軟件的統(tǒng)計(jì)結(jié)果包含源代碼中的注釋行和空行,因?yàn)樽髡哒J(rèn)為它們同樣也是源代碼的必要組成部分。
本軟件對(duì) Windows 下和 Unix/Linux 下的源代碼文件都可以正確地統(tǒng)計(jì)行數(shù)。
看到你這個(gè)問題,感覺蠻有意思的,所以寫了個(gè)遞歸方法,可以計(jì)算出項(xiàng)目有多少行代碼
public?class?ItemCount
{
private?int?lineCount;
private?int?fileCount;
public?int?getLineCount()
{
return?lineCount;
}
public?int?getFileCount()
{
return?fileCount;
}
public?static?void?main(String[]?args)?throws?IOException
{
ItemCount?itemCount?=?new?ItemCount();
//path的值就是你的項(xiàng)目路徑
String?path?=?"E:\\lucene\\src";
itemCount.getItemLineNum(new?File(path));
System.out.println("該項(xiàng)目一共有"+itemCount.getFileCount()+"個(gè)java源文件,"+itemCount.getLineCount()+"行代碼");
}
//遞歸
public?void?getItemLineNum(File?path)?throws?IOException{
if(path.isFile()??path.getName().endsWith(".java")){
BufferedReader?br?=?new?BufferedReader(new?FileReader(path));
fileCount++;
while(br.readLine()!=null){
lineCount++;
}
System.out.println(path.getName());
br.close();
}else?if(path.isDirectory()){
File[]?listFiles?=?path.listFiles();
for?(File?file?:?listFiles)
{
getItemLineNum(file);
}
}
}
}
import java.io.*;public class Check {
public static void main (String[] args) throws IOException{
check("D:/MyEclipse/java/src/my/Check.java");//這里的字符串是你要統(tǒng)計(jì)的文件的路徑,你自己填寫
} public static void check (String s) throws IOException{
int all = 0, empty = 0, describe = -1, i = 0;
String str = null;
File f = new File(s);
BufferedReader br = new BufferedReader (new FileReader(f));
str = br.readLine();
while(str != null){
all++;
if(str.trim().equals("")) empty++;
if(str.contains("http://")) describe++;
if(str.contains("/*")){
while(!str.contains("*/")){
i++;
all++;
describe++;
str = br.readLine();
}
}
str = br.readLine();
}
System.out.println("文件物理總行數(shù)為:" + all);//;;klj
System.out.println("文件中空行數(shù)為:" + empty);//hkk
System.out.println("文件注釋行數(shù)為:" + describe);
System.out.println("文件非注釋行數(shù)為:" + (all - i));
/*asdfdsff
* sdasadfsf//fg
* asdfsdf//dsfg
* asdf
*/
}
}以上是代碼,我在我的機(jī)子上實(shí)現(xiàn)了,希望能幫到你!我也是JAVA菜鳥,希望有高手能更好地解答
java項(xiàng)目的大小衡量標(biāo)準(zhǔn):
微型:只是一個(gè)人,甚至是半日工作在幾天內(nèi)完成的軟件; ?
小型:一個(gè)人半年內(nèi)完成的?2000?行以內(nèi)的程序;
中型:?5?個(gè)人在?1?年多的時(shí)間內(nèi)完成的?5000-50000?行的程序;
大型:?5-10?人在兩年內(nèi)完成的?50000-100000?行的程序;
甚大型:?100-1000?人參加用?4-5?年完成的具有?100?,?0000?行的軟件項(xiàng)目;
極大型:?2000-5000?人參加,?10?年內(nèi)完成的?1000?萬行以內(nèi)的程序;
以上摘自:《軟件工程概論》???鄭人杰、殷人民編
這樣的觀點(diǎn)是以代碼行作為計(jì)量標(biāo)準(zhǔn)的,認(rèn)為代碼行多的自然項(xiàng)目也就大了。
方法一:
如果想要通過java代碼的方式來計(jì)算.java文件的行數(shù),可以通過IO來讀取,
BufferedReader的方法readLine()來按行讀取,每讀取一行,行數(shù)+1
方法二:
如果要查看.java文件的代碼行數(shù),
可以使用現(xiàn)成的IDE工具,比如ECLIPSE...
每一行的行號(hào)都有表示出來
分享標(biāo)題:java項(xiàng)目總代碼行計(jì)算 java開發(fā)一天寫多少行代碼
標(biāo)題網(wǎng)址:http://m.rwnh.cn/article18/hiiidp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、定制網(wǎng)站、品牌網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)公司、域名注冊(cè)、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)