gpt4 book ai didi

c# - 使用 CsvHelper 将引号写入特定的 CSV 字段

转载 作者:行者123 更新时间:2023-11-30 16:41:51 25 4
gpt4 key购买 nike

编写 CSV 文件时,只需要引用特定的列。使用 CsvHelper 6.1.0,是否有一些方法可以单独配置字段,特别是它们是否被引用?

Field1,Field2,Field3,Field4,Field5,Field6 "Quoted","Quoted",NotQuoted,NotQuoted,NotQuoted,"Quoted" "Quoted","Quoted",NotQuoted,NotQuoted,NotQuoted,"Quoted"

到目前为止,我只在配置对象中找到了 QuoteAllFields 和 QuoteNoFields。

最佳答案

您可以使用 Class Mapping 执行此操作.

您可以从自动映射类开始,然后编辑您希望出现在引号中的字段。像这样:

public sealed class MyClassMap : ClassMap<MyClass> {
public MyClassMap() {
AutoMap();
Map(m => m.Field1).ConvertUsing(m => $"\"{m.Field1}\"");
Map(m => m.Field2).ConvertUsing(m => $"\"{m.Field2}\"");
Map(m => m.Field6).ConvertUsing(m => $"\"{m.Field6}\"");
}
}

然后在编写文件时应用它,如下所示:

CsvWriter myWriter = new CsvWriter(stream);
myWriter.Configuration.RegisterClassMap<MyClassMap>();

我不完全确定这是否是执行此操作的“正确”方法,但它确实看起来是最简单的。您可以实现一个TypeConverter,将引号放在引号中,但这对于如此简单的事情来说似乎工作量太大了...

关于c# - 使用 CsvHelper 将引号写入特定的 CSV 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47958246/

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