【发布时间】:2019-12-08 21:48:42
【问题描述】:
我正在尝试使用以下代码导入 CSV 文件:
using CsvHelper;
using CsvHelper.Configuration;
\\\ ...
try
{
var csv = new CsvReader(csvReader, new CsvConfiguration {
HasHeaderRecord = false, Delimiter = ";" });
records = csv.GetRecords<FileDataContainerDisplay>().ToList();
}
catch (Exception)
{
throw new FileFormatException();
}
代码失败
抛出异常:CsvHelper.dll 中的“CsvHelper.TypeConversion.CsvTypeConverterException”
奇怪的是,用于处理以下类型文件的代码:
Date;CurveName;Gridpoint;Timebase;Value
1.1.1900 00:00:00;A;1;1;0.12
1.1.1900 00:00:00;A;1;2;0.23
1.1.1900 00:00:00;A;1;3;0.34
...
谁能指导我在哪里可以找到更多关于哪种类型转换失败的详细信息?
顺便说一句,FileFormatException 的定义比较无聊:
public class FileFormatException : Exception
{ }
参考文献
【问题讨论】:
-
实际上我会构建自己的 csv 解析器,csv 非常原始,您可以在 50 行或更少的代码中自行处理。这里不需要另一个依赖项...修复您的异常:只需在 FileDataContainerDisplay 中使用字符串属性并自行解析数据类型