Java OpenCSV如何使用HeaderColumnNameTranslateMappingStrategy捕获异常/错误

Java OpenCSV如何使用HeaderColumnNameTranslateMappingStrategy捕获异常/错误,java,csv,opencsv,Java,Csv,Opencsv,在尝试产生错误时,如果您在字符串应为双精度或整数时给出字符串,则很容易产生错误,这会导致此错误: Exception in thread "pool-2-thread-5" Exception in thread "pool-2-thread-8" java.lang.RuntimeException: com.opencsv.exceptions.CsvDataTypeMismatchException: Konvertierung von OBST & GEMÜSE in doubl

在尝试产生错误时,如果您在字符串应为双精度或整数时给出字符串,则很容易产生错误,这会导致此错误:

Exception in thread "pool-2-thread-5" Exception in thread "pool-2-thread-8" java.lang.RuntimeException: com.opencsv.exceptions.CsvDataTypeMismatchException: Konvertierung von OBST & GEMÜSE in double fehlgeschlagen.
    at com.opencsv.bean.concurrent.ProcessCsvLine.run(ProcessCsvLine.java:99)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Caused by: com.opencsv.exceptions.CsvDataTypeMismatchException: Konvertierung von OBST & GEMÜSE in double fehlgeschlagen.
    at com.opencsv.bean.ConverterPrimitiveTypes.convertToRead(ConverterPrimitiveTypes.java:128)
    at com.opencsv.bean.BeanFieldSingleValue.convert(BeanFieldSingleValue.java:98)
    at com.opencsv.bean.AbstractBeanField.setFieldValue(AbstractBeanField.java:180)
    at com.opencsv.bean.AbstractMappingStrategy.setFieldValue(AbstractMappingStrategy.java:581)
    at com.opencsv.bean.AbstractMappingStrategy.populateNewBean(AbstractMappingStrategy.java:328)
    at com.opencsv.bean.concurrent.ProcessCsvLine.processLine(ProcessCsvLine.java:128)
    at com.opencsv.bean.concurrent.ProcessCsvLine.run(ProcessCsvLine.java:83)
    ... 3 more
Caused by: org.apache.commons.beanutils.ConversionException: Error converting from 'String' to 'Double' For input string: "OBST & GEMÜSE"
    at org.apache.commons.beanutils.converters.AbstractConverter.handleError(AbstractConverter.java:282)
    at org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:177)
    at org.apache.commons.beanutils.converters.ConverterFacade.convert(ConverterFacade.java:61)
    at org.apache.commons.beanutils.ConvertUtilsBean.convert(ConvertUtilsBean.java:491)
    at com.opencsv.bean.ConverterPrimitiveTypes.convertToRead(ConverterPrimitiveTypes.java:118)
    ... 9 more
Caused by: java.lang.NumberFormatException: For input string: "OBST & GEMÜSE"
    at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:2043)
    at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110)
    at java.lang.Double.parseDouble(Double.java:538)
    at java.lang.Double.<init>(Double.java:608)
    at org.apache.commons.beanutils.converters.NumberConverter.toNumber(NumberConverter.java:448)
    at org.apache.commons.beanutils.converters.NumberConverter.convertToType(NumberConverter.java:271)
    at org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:169)
    ... 12 more
线程“pool-2-thread-5”中的异常线程“pool-2-thread-8”java.lang.RuntimeException:com.opencsv.exceptions.CsvDataTypeMismatchException:Konvertierung von OBST&GEMÜSE在双fehlgeschlagen中。
位于com.opencsv.bean.concurrent.ProcessCsvLine.run(ProcessCsvLine.java:99)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
运行(Thread.java:748)
原因:com.opencsv.exceptions.CsvDataTypeMismatchException:konverterung von OBST&GEMÜSE在双fehlgeschlagen中。
位于com.opencsv.bean.ConverterPrimitiveTypes.convertoread(ConverterPrimitiveTypes.java:128)
在com.opencsv.bean.BeanFieldSingleValue.convert(BeanFieldSingleValue.java:98)
位于com.opencsv.bean.AbstractBeanField.setFieldValue(AbstractBeanField.java:180)
位于com.opencsv.bean.AbstractMappingStrategy.setFieldValue(AbstractMappingStrategy.java:581)
位于com.opencsv.bean.AbstractMappingStrategy.populateNewBean(AbstractMappingStrategy.java:328)
位于com.opencsv.bean.concurrent.ProcessCsvLine.processLine(ProcessCsvLine.java:128)
位于com.opencsv.bean.concurrent.ProcessCsvLine.run(ProcessCsvLine.java:83)
... 3个以上
原因:org.apache.commons.beanutils.ConversionException:将输入字符串的“String”转换为“Double”时出错:“OBST&GEMÜSE”
位于org.apache.commons.beanutils.converters.AbstractConverter.handleError(AbstractConverter.java:282)
位于org.apache.commons.beanutils.converts.AbstractConverter.convert(AbstractConverter.java:177)
位于org.apache.commons.beanutils.ConverterFacade.convert(ConverterFacade.java:61)
位于org.apache.commons.beanutils.ConvertUtilsBean.convert(ConvertUtilsBean.java:491)
位于com.opencsv.bean.ConverterPrimitiveTypes.convertoread(ConverterPrimitiveTypes.java:118)
... 9更多
原因:java.lang.NumberFormatException:对于输入字符串:“OBST&GEMÜSE”
位于sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:2043)
at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110)
位于java.lang.Double.parseDouble(Double.java:538)
位于java.lang.Double。(Double.java:608)
位于org.apache.commons.beanutils.converters.NumberConverter.toNumber(NumberConverter.java:448)
位于org.apache.commons.beanutils.converters.NumberConverter.convertToType(NumberConverter.java:271)
位于org.apache.commons.beanutils.converts.AbstractConverter.convert(AbstractConverter.java:169)
... 还有12个
我的代码如下所示:

用于(输入)