如何在多行上写入数据但是在csv的同一单元格内?

我想用C#创建一个csv文件。

我有一些数据,我想写在同一个单元格内的多行上。

例如,如果我有三个句子,

Sample sentence 1. This is second sample sentence. and this is third sentence. 

我想在csv文件的单个单元格中写出所有这三个句子,但我想在其中三个单独的行。

我的预期输出是:

 Sample sentence 1. This is second sample sentence. and this is third sentence. 

目前我试图通过在两个句子之间使用\n字符来实现这一点但是当我这样做时,所有三个句子都在单独的行上。

谁能告诉我如何解决这个问题?

引用维基百科 :

带有嵌入换行符的字段必须包含在双引号字符中。

像例如:

 1997,Ford,E350,"Go get one now they are going fast" 

您可以更改应用程序用于解析csv文件中的行的标记,但根据csv文件格式的定义,文件中的行用于表示生成的表格数据中的行。

 string input = "..."; var r = input.Split(new[] { '.' }, StringSplitOptions.RemoveEmptyEntries) // split by dot (have you any better approaches?) .Select(s => String.Format("\"{0}.\"", s.Trim())); // escape each with quotes input = String.Join(Environment.NewLine, r); // break by line break 

始终将您的描述包装在“\”之间,例如:CsvRow.Add(“\”“+ ID +”:“+ description +”\“”);

CSV代表“逗号分隔值”,它只是文本文件的描述。 如果要导入Excel,然后只将句子放在一行中,您应该尝试:

 Environment.NewLine 

instread of a simple /n

我想在csv文件的单个单元格中写出所有这三个句子,但我想在其中三个单独的行

CSV文件定义为PER LINE一行,单元格用逗号(“,”)分隔。 现在,您的解析器可以支持使用“”将句子放在一个单元格中,但这已经扩展了规范。 您也可以对\ n进行编码并稍后对其进行解码,但是这又不是vcsv文件。 最后,您尝试按照定义未定义的csv文件执行某些操作。 \ n是新的线符号。 自然地,编辑将在这里显示一个新行。