【发布时间】:2022-01-29 17:07:14
【问题描述】:
在下面的 sn-p 中,我尝试使用 Apache Commons 库中的 CSVParser 读取 excel 文件。问题是为什么records.getRecords(); 使records 的列表为空。我应该如何意识到这种行为?
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVParser;
import org.apache.commons.csv.CSVRecord;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
public class ReadCSV {
public ReadCSV() {
}
/* Define headers as enum */
enum HEADER {
ID, NAME, AGE
}
public List<List<String>> ReadCSVToList(String csvPath) throws IOException, HighBalanceException {
List<List<String>> csvList = new ArrayList<>();
try {
Reader reader = new FileReader(csvPath);
CSVParser records = CSVFormat.DEFAULT.withHeader(HEADER.class).parse(reader);
List<CSVRecord> records1 = records.getRecords();
System.out.println(records1.size()); // 2
List<CSVRecord> records2 = records.getRecords();
System.out.println(records2.size()); // 0
【问题讨论】:
-
我应该如何知道这种行为 - 阅读您在程序中使用的所有类的文档。