gpt4 book ai didi

csvhelper - 在CsvHelper中,如何捕获转换错误并知道发生在哪个字段和哪一行?

转载 作者:行者123 更新时间:2023-12-03 09:05:40 24 4
gpt4 key购买 nike

我正在成功使用类CsvReader并对此感到满意,但是,我使用的文件是由一个小组生成的,该小组在不通知我的情况下更改了列格式。

因此,一会儿一切正常,然后第二天早上事情中断,csv.GetRecord<MyType>()周围的try catch块捕获了错误并记录了错误,但是我无法从Exception实例中收集任何有值(value)的信息。它只是说:“无法执行转换。”而InnerException没有任何内容。不是很有用。我什至不知道我的150列中哪一列引起了问题。

您能帮我弄清楚如何找出导致问题的哪一行在哪一列吗?

谢谢

最佳答案

当前,无法在字段/属性级别上忽略错误。您当前的选择是:

查看异常数据。

catch( Exception ex )
{
// This contains useful information about the error.
ex.Data["CsvHelper"];
}

忽略阅读异常。但是,这是在行级别,而不是字段。它将允许仍然读取整个文件,而忽略不起作用的行。发生异常时,您可以获取回调。
csv.Configuration.IgnoreReadingExceptions = true;
csv.Configuration.ReadingExceptionCallback = ( ex, row ) =>
{
// Do something with the exception and row data.
// You can look at the exception data here too.
};

关于csvhelper - 在CsvHelper中,如何捕获转换错误并知道发生在哪个字段和哪一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21609348/

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