【问题标题】:Quote within a .CSV data field在 .CSV 数据字段中引用
【发布时间】:2016-05-02 19:25:19
【问题描述】:

这是我当前的连接字符串:

string connString = String.Format(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=""{0}"";Extended Properties=""text;HDR=NO;FMT=Delimited\""",Path.GetDirectoryName(csv_file_path));

这很好用,只是我有几行代码如下:

"jon","smith","ohio"
"tom","jones","indiana"
"mary","baker "mills","florida

最后一行在字段中包含引号,并且字段在“mills”之前结束。有没有人有可以在数据字段中容纳引号的连接字符串?

谢谢!

【问题讨论】:

  • 修复数据以转义引号似乎是更直接的解决方案;你有什么理由不能这样做?
  • 正如@Jacob 所提到的,您不能首先修复数据吗?另外,为什么要使用这样的原始字符串作为数据源?您不能使用解析 CSV 文件的帮助程序库(例如 CsvHelper)来读取它吗?
  • 你的分隔符应该是 ,而不是 "

标签: c# asp.net vb.net visual-studio oledb


【解决方案1】:

虽然修复你的来源是最正确的答案,但我想如果你真的想要你可以使用 var myStr = originalStr.replace(@"""",@""""""); 这将转义引号字符的所有实例。

如果可能,再次修复数据。

【讨论】:

    猜你喜欢
    • 2013-12-02
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    • 2019-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-19
    相关资源
    最近更新 更多