编写程序统计—个Java代码文件有多少行代码(空白行不算)使用包装流
时间: 2024-01-13 12:03:05 浏览: 16
下面是使用包装流(即 `BufferedInputStream` 和 `BufferedReader`)来统计 Java 代码文件中的有效行数的程序:
```java
import java.io.*;
public class CountLines {
public static void main(String[] args) throws IOException {
// 指定 Java 代码文件路径
File file = new File("path/to/your/java/file.java");
// 创建文件输入流
FileInputStream fis = new FileInputStream(file);
BufferedInputStream bis = new BufferedInputStream(fis);
BufferedReader br = new BufferedReader(new InputStreamReader(bis));
// 计数器
int count = 0;
// 遍历文件每一行,统计有效行数
String line;
while ((line = br.readLine()) != null) {
// 去掉头尾空格后判断是否为空行
if (!line.trim().isEmpty()) {
count++;
}
}
// 输出结果
System.out.println("有效行数:" + count);
// 关闭输入流
br.close();
}
}
```
这个程序与上一个程序的区别在于使用了 `BufferedInputStream` 和 `BufferedReader` 来提高文件读取的效率。需要注意的是,在使用包装流时需要注意关闭顺序,即先关闭 `BufferedReader`,再关闭 `BufferedInputStream`,最后关闭 `FileInputStream`。