[alibaba/easyexcel]自定义转换器中咨询

2024-05-24 104 views
7

一个实体类中有多个在自定义转换器 我想获取其中很多行的数据的单元格不符合的错误信息 我在其中一个自定义转换器我throw new 一个异常后 就会走监听器的异常方法中直接读取下一行数据并且跳过该单元格的后单元格校验 我想知道如何不跳过呢 举个例子 实体类有10个字段,每一个字段做自定义转换 单元格就10个列 读取表格的时候,其中一列单元格的自定义转换出现异常该单元格后的信息就不执行转换了 直接进行读取下一行 如果我 想拿到改行所有列单元格错误错误信息就不好获取了, 这个有办法解决吗

回答

3

覆盖Listener中的onException方法不再抛出就不会向上抛出,而是继续执行(貌似)

3

Listener中的onException方法我没有抛出异常.会继续执行 但是执行的下一行我想让他继续执行该行的验证 因为需求就是读取一个Excel把不符合要求的单元格都告诉客户 现在其中一个转换器抛出异常,同一行其他转换器就不执行了,直接进行下一行 重新读取验证转换器 这个后期会优化一下吗

1

数据规则的校验不要放到转换器中,放到Listener中试试,我也是普通的用户2333

6

校验异常不应该放在转换器里面,应该放在invoke里面,拿到整行数据后再校验。