CSVHelper写入固定长度字段

CSVHelper写入固定长度字段,csvhelper,Csvhelper,从现在开始,我一直在编写csv文件来编写字符串,但我在csvhelper遇到了一个更结构化的解决方案。我很清楚如何读取数据和执行类型转换,但在编写csv文件以指定字段长度时又如何呢?假设我有一个字段,从0开始,长度为4个字符。。。我如何指定这一点?我还没有找到和属性等等 感谢您可以使用自定义类型转换器指定固定宽度 void Main() { var记录=新列表 { 新Foo{Id=1,Name=“one”}, }; 使用(var writer=newstreamwriter(“path\\to\

从现在开始,我一直在编写csv文件来编写字符串,但我在csvhelper遇到了一个更结构化的解决方案。我很清楚如何读取数据和执行类型转换,但在编写csv文件以指定字段长度时又如何呢?假设我有一个字段,从0开始,长度为4个字符。。。我如何指定这一点?我还没有找到和属性等等


感谢您可以使用自定义类型转换器指定固定宽度

void Main()
{
var记录=新列表
{
新Foo{Id=1,Name=“one”},
};
使用(var writer=newstreamwriter(“path\\to\\file.csv”))
使用(var csv=新csv编写器(编写器))
{
csv.Configuration.RegisterClassMap();
csv.书面记录(记录);
}
}
公开课Foo
{
公共int Id{get;set;}
公共字符串名称{get;set;}
}
公共密封类FooMap:ClassMap
{
公共地图()
{
自动映射();
Map(m=>m.Id).TypeConverter();
}
}
公共类FixedWidthOutput:Int32Converter
{
公共重写字符串ConvertToString(对象值,IWriterRow行,MemberMapData MemberMapData)
{
返回值.ToString().PadLeft(4,'0');
}
}

您可以使用自定义类型转换器指定固定宽度

void Main()
{
var记录=新列表
{
新Foo{Id=1,Name=“one”},
};
使用(var writer=newstreamwriter(“path\\to\\file.csv”))
使用(var csv=新csv编写器(编写器))
{
csv.Configuration.RegisterClassMap();
csv.书面记录(记录);
}
}
公开课Foo
{
公共int Id{get;set;}
公共字符串名称{get;set;}
}
公共密封类FooMap:ClassMap
{
公共地图()
{
自动映射();
Map(m=>m.Id).TypeConverter();
}
}
公共类FixedWidthOutput:Int32Converter
{
公共重写字符串ConvertToString(对象值,IWriterRow行,MemberMapData MemberMapData)
{
返回值.ToString().PadLeft(4,'0');
}
}