Java 8 读取 CSV 文件:代码示例与详细解析
以下是使用 JDK 8 读取 CSV 文件的示例代码,并对代码进行了详细的讲解:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class CSVReader {
public static void main(String[] args) {
String csvFilePath = 'data.csv'; // CSV 文件路径
List<String[]> csvData = readCSV(csvFilePath); // 调用读取 CSV 文件的方法
for (String[] row : csvData) {
for (String cell : row) {
System.out.print(cell + '\t');
}
System.out.println();
}
}
public static List<String[]> readCSV(String csvFilePath) {
List<String[]> csvData = new ArrayList<>();
try (BufferedReader br = new BufferedReader(new FileReader(csvFilePath))) {
String line;
while ((line = br.readLine()) != null) {
String[] rowData = line.split(',');
csvData.add(rowData);
}
} catch (IOException e) {
e.printStackTrace();
}
return csvData;
}
}
代码详解:
- 首先定义了一个
CSVReader类,其中包含了一个main方法和一个readCSV方法。 main方法是程序的入口,指定了 CSV 文件的路径csvFilePath,然后调用readCSV方法读取 CSV 文件的内容。readCSV方法接受一个 CSV 文件的路径作为参数,返回一个存储 CSV 文件内容的List<String[]>对象。- 在
readCSV方法中,我们使用BufferedReader来读取 CSV 文件的内容。使用FileReader将 CSV 文件转换为字符流,并传递给BufferedReader进行读取。 - 在
BufferedReader的readLine方法中,我们逐行读取 CSV 文件的内容,并使用逗号作为分隔符将每一行的数据拆分为一个字符串数组rowData。 - 将每一行的数据数组
rowData添加到存储 CSV 数据的List<String[]>对象中。 - 最后返回存储 CSV 数据的
List<String[]>对象。 - 在
main方法中,我们遍历csvData列表,将每一行的数据数组输出到控制台。
请注意:
- 上述代码假设 CSV 文件中的每一行都使用逗号作为分隔符。如果 CSV 文件中使用其他分隔符,需要将
line.split(',')中的逗号替换为相应的分隔符。 - 本示例中将 CSV 文件路径设置为
'data.csv',你需要将其替换为你的 CSV 文件实际路径。
希望本文能帮助你理解如何使用 Java 8 读取 CSV 文件。如果你有任何问题,请随时在评论区留言。
原文地址: https://www.cveoy.top/t/topic/b593 著作权归作者所有。请勿转载和采集!