c#内插字符串中的转义分号



我正在将数据写入。csv文件,我需要正确读取以下表达式:

csvWriter.WriteLine($"Security: {sec.ID} ; Serial number: {sec.SecuritySerialNo}"); 

中间的分号用于将序列号放在单独的单元格中。

问题是ID也可以包含分号,弄乱数据,因此我需要转义它。

我已经尝试使用replace:

csvWriter.WriteLine($"Security: {sec.ID.Replace(";", "")} ; Serial number: {sec.SecuritySerialNo}"); 

虽然删除分号不是我想要达到的目的,但我只是想转义它们。

让我们再次强调,创建CSV文件的最佳方法是通过专门的CSV Parser库。
但是,为了解决您的问题所呈现的简单情况,您可以在每个字段周围添加双引号。这应该足以向Excel解析器解释如何处理您的字段。

因此,以这种方式导出字段:

csvWriter.WriteLine($""Security: {sec.ID}";"Serial number: {sec.SecuritySerialNo}""); 

注意,我已经删除了分号周围的空格。这很重要,否则Excel将无法正确解析该行

最新更新