用java写一个统计这个文件夹中所有csv总共有多少行
- 创建一个BufferedReader对象,用来读取文件夹中的csv文件。
- 使用一个循环,每次读取一行数据,直到文件结束。
- 使用一个计数器变量,每次读取一行数据就加一。
- 返回计数器变量的值,就是csv文件的行数。
以下是一个可能的代码示例:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class CSVLineCounter {
// 定义一个方法,接受一个文件夹路径作为参数,返回该文件夹中所有csv文件的总行数
public static int countLinesInFolder(String folderPath) throws IOException {
// 创建一个File对象,表示文件夹
File folder = new File(folderPath);
// 创建一个数组,存储文件夹中的所有文件
File[] files = folder.listFiles();
// 创建一个计数器变量,初始化为0
int count = 0;
// 遍历文件数组
for (File file : files) {
// 判断文件是否是csv格式
if (file.getName().endsWith(".csv")) {
// 调用countLinesInFile方法,统计该文件的行数,并累加到计数器变量上
count += countLinesInFile(file.getPath());
}
}
// 返回计数器变量的值
return count;
}
// 定义一个方法,接受一个文件路径作为参数,返回该文件的行数
public static int countLinesInFile(String filePath) throws IOException {
// 创建一个BufferedReader对象,用来读取文件
BufferedReader br = new BufferedReader(new FileReader(filePath));
// 创建一个计数器变量,初始化为0
int count = 0;
// 使用一个循环,每次读取一行数据,直到文件结束
while (br.readLine() != null) {
// 每次读取一行数据就加一
count++;
}
// 关闭BufferedReader对象
br.close();
// 返回计数器变量的值
return count;
}
public static void main(String[] args) throws IOException {
// 测试代码,假设有一个名为test的文件夹,里面有若干个csv文件
String folderPath = "test";
// 调用countLinesInFolder方法,打印出总行数
System.out.println("The total number of lines in the folder is: " + countLinesInFolder(folderPath));
}
}