我正在使用 csvHelper 6.0.0 版,我找不到可在“配置”类中访问的“HasExcelSeparator”、“TrimFields”属性。我如何访问上述这些属性。被卡住了……提前致谢。
所有 Excel 特定的东西都被删除了,所以HasExcelSeparator
不再存在。 Excel 的东西需要来自 contrib 库或其他地方。
TrimFields
现在使用TrimOptions
。
这是否意味着您不能再使用 excel 分隔符行读取 csv 文件?
那么,如果这不再受支持,是否有任何示例可以实现与世界上最常用的 CSV 查看器的兼容性?
sep=,
表示 Excel 编写了该文件。
您可以使用 1 行代码重新添加该功能。
csv.Configuration.Delimiter = Regex.Match(reader.ReadLine(), "sep=(.*)").Groups[1].Value;
完整示例:
void Main()
{
var s = new StringBuilder();
s.AppendLine("sep=,");
s.AppendLine("Id,Name");
s.AppendLine("1,one");
using (var reader = new StringReader(s.ToString()))
using (var csv = new CsvReader(reader, CultureInfo.InvariantCulture))
{
csv.Configuration.Delimiter = Regex.Match(reader.ReadLine(), "sep=(.*)").Groups[1].Value;
csv.GetRecords<Foo>().ToList().Dump();
}
}
public class Foo
{
public int Id { get; set; }
public string Name { get; set; }
}
谢谢!