我使用的是优秀的CsvHelper库。现在我需要显式地在字段中添加一些前导空格和尾随空格。我使用以下命令来完成此操作:
private const string Space = " ";
//....
Map(x => x.Bandwidth).Index(++indexCounter).ConvertUsing(item => Space + item + Space).Name("Bandwidth");
这个方法很有效,只要我不选择一般的修剪使用
// Default value
csv.Configuration.TrimFields = true;
正如在CsvHelper文档中所描述的那样。但是我如何一般地使用修剪,除了特定的字段?我目前使用的是2. 5. 0版本。
- 是否有办法仅对一个字段省略修剪?**
编辑:
我刚刚发现我使用ConvertUsing
的方法是完全错误的:请参阅CsvHelper ConvertUsing not changing output我稍后将删除或更新此问题。
2条答案
按热度按时间slhcrj9b1#
我完全搞错了,与
ConvertUsing
的Map一开始就不起作用,与选项TrimFields = true
无关。我让它使用一个显式的转换器类:
然后我将Map更改为
**此解决方案现在可以工作,为该字段添加前导空格和尾随空格,而不考虑修剪选项。**奇怪的是,即使未启用此选项,它也会自动为该字段输出添加引号。不过,Microsoft Excel显示的字段内容与预期一致,没有引号,但带有空格。
dddzy1tm2#
试试这个,它适合我在V28.1上使用