使用apache共享资源获取CSV文件头

2022-09-04 01:05:57

在过去的2个小时里,我一直在寻找解决我的问题的方法,但徒劳无功。我正在尝试使用Apache共享资源读取CSV文件,我能够读取整个文件,但我的问题是如何在数组中仅提取CSV的标头?


答案 1

默认情况下,第一条读取的记录将始终是标头记录,例如在下面的示例中:CSVParser

CSVFormat csvFileFormat = CSVFormat.DEFAULT.withHeader(FILE_HEADER_MAPPING);
FileReader fileReader = new FileReader("file");
CSVParser csvFileParser = new CSVParser(fileReader, csvFileFormat);
List csvRecords = csvFileParser.getRecords();

csvRecords.get(0)将返回标头记录。


答案 2

我到处寻找,甚至上面的解决方案也不起作用。对于其他任何有此问题的人来说,这确实如此。

Iterable<CSVRecord> records;
Reader in = new FileReader(fileLocation);
records = CSVFormat.EXCEL.withHeader().withSkipHeaderRecord(false).parse(in);
Set<String> headers = records.iterator().next().toMap().keySet();

请注意,您使用的 已使用一行 CSV。.next()