Univocity - return 包含错误上下文的包装记录

Univocity - return wrapped record with error context

假设我正在解析 CSV 员工文件。我有一个名为 Employee 的 pojo,我正在使用单向例程和迭代器。

Iterator<Employee> iterator = routines.iterate(Employee.class, ...)

当解析一行发生错误时,我不想使用 setProcessorErrorHandler() 回调。相反,我想 return 一个通用的 "Record" 或 "Item" 包装器,它包装 Employee 和任何错误上下文信息(如果适用)。有点像 JTinyCsvParser library's CsvMappingResult 对象的行为方式。

有没有一种简单的方法可以做到这一点,例如 com.univocity.parsers.common.DataProcessingException?

您可以,但您仍然需要使用 RetryableErrorHandler 并且您必须从中调用 keepRecord() 以防止记录被丢弃。这样,您将获得有问题的 Employee 实例,其中包含可以解析的信息。