gpt4 book ai didi

java - Univocity - 解析 CSV 时检测缺失的列

转载 作者:行者123 更新时间:2023-11-29 04:08:18 25 4
gpt4 key购买 nike

我正在使用 Univocity 库来解析 CSV,它工作得很好,但我需要一种方法来检测正在解析的文件中的列数是否少于所需的列数

例如,如果我需要一个 3 列的文件,其中的列映射到 [H1,H2,H3],那么我会收到一个看起来像这样的文件(没有标题)

V1_H1,V1_H2
V2_H1,V2_H2

使用时

record.getString("H3");

这将返回 null,相反,我需要这个文件要么无法解析,要么我可以检查它是否遗漏了一个列并停止处理它

有什么办法可以实现吗?

最佳答案

因此,由于我这里的主要问题是确保标题计数与 CSV 文件中提供的列数相同,并且由于我使用迭代器迭代记录,所以我添加了一个检查喜欢:

CsvParser parser = new CsvParser(settings);
ResultIterator<Record, ParsingContext> iterator = parser.iterateRecords(inputStream).iterator();
if(iterator.getContext().parsedHeaders().length != settings.getHeaders().length){
throw new Exception("Invalid file");
}

它对我有用,不确定是否有更好的方法。

关于java - Univocity - 解析 CSV 时检测缺失的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56792683/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com