JAVA用IO流查看自己寫了多少行程式
作為一個入坑JAVA有一段時間的小白,相信很多同學都有查看***自己到底寫了多少行代碼***的想法,本文利用簡單的IO流可以實作這一功能:
主要原理:
利用緩沖流BufferedReader的**readLine()**方法,可以一行一行的讀取(但該方法不識別換行符,所以輸出的總行數不包括空行),
代碼如下:
import org.junit.Test;
import java.io.*;
public class Test {
int count;
// 測驗Java作業區代碼的行數
@Test
public void test() {
File firstFile = new File("d:/JAVA作業區"); // 這里放的是Java作業區(workplace)的檔案目錄,就是eclipse或者IDEA的作業區目錄
System.out.println(func(firstFile));
}
// 求行數的函式
public int func(File file) {
if (file.isDirectory()) {
File[] files = file.listFiles();
for (var i = 0; i < files.length; i++) {
func(files[i]);
}
} else {
if (file.getName().endsWith(".java")) {
BufferedReader br = null;
try {
FileReader fr = new FileReader(file);
br = new BufferedReader(fr);
int len;
char[] cbuf = new char[20];
while ((len = br.read(cbuf)) != -1) {
String str = br.readLine();
count++;
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
return count;
}
}
本人也是一個JAVA小白,望各位不吝賜教,留言寫下本文的不足之處或可以改進的地方,謝謝!!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/107095.html
標籤:其他
上一篇:WEB 應用快取決議以及使用 Redis 實作分布式快取
下一篇:海康SDK/Ehome協議/RTSP協議/GB28181安防視頻云服務EasyCVR中設備管理內無法顯示H.265流地址原因分析
