c# - 从 CsvHelper 升级,修复重大更改
问题描述
如CsvHelper 项目的 GitHub 上所示,配置现在是只读的,因此我已将属性初始化移动到构造函数中。还有一个属性现在不受支持:IgnoreQuotes。
新的对应参数是什么?
var config = new CsvConfiguration(CultureInfo.InvariantCulture)
{
HasHeaderRecord = true,
BadDataFound = null,
Delimiter = ",",
Quote = '"',
IgnoreQuotes = true
};
解决方案
而不是IgnoreQuotes
有ParserMode
s。截至版本21.1.0
有 3 种模式。
- RFC4180
- 逃脱
- 无法逃避
RFC4180
将像“规范”所说的那样对待字段,并期望在包含分隔符、换行符或双引号的字段周围加上双引号。如果字段中包含双引号,则需要使用双引号对其进行转义(前面)。
Escape
将仅使用转义字符并在转义后立即忽略该字符。
NoEscape
将忽略双引号和转义字符。这意味着字段不能包含定界符、双引号或换行符,因为无法转义它们。
您可以设置分隔符(字符串)、引号(char)、转义符(char)和换行符(字符串)。
推荐阅读
- javascript - 带有 return 语句和没有的 Javascript 递归
- git - 通过 .gitattributes 文件禁用行尾规范化
- rust - 为什么 Rayon 不需要 Arc<_>?
- python - SQLAlchemy:AmbiguousForeignKeysError 对父级的双重引用
- ios - 您如何使用 ReplayKit 实现共享?
- java - java selenium xpath获取字符串值
- python - 在 PyTorch 的张量中将一个数字范围内插到另一个数字范围内
- java - 从源码中统计某个词的实例
- rspec - 使用 rspec 测试操作文本
- python - 为什么 3d 箭袋图的箭头指向错误的方向?