如何在csv的同一个单元格中写入多行数据?

ztmd8pv5  于 2023-09-28  发布在  其他
关注(0)|答案(6)|浏览(166)

我想用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字符来实现这一点,但当我这样做时,所有三个句子都在单独的一行上。
有人能告诉我如何解决这个问题吗?

mftmpeh8

mftmpeh81#

quote Wikipedia
带有嵌入式换行符的字段必须用双引号引起来。
例如:

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

ffscu2ro2#

您可以更改应用程序用于解析csv文件中的行的标记,但根据definition of the csv file format,文件中的行用于表示结果表格数据中的行。

ia2d9nvy

ia2d9nvy3#

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
ryoqjall

ryoqjall4#

请务必将您的描述用“\”字括起来,例如:CsvRow.Add(“"”+ ID +“:“+ description +“"”);

7eumitmz

7eumitmz5#

string filePath = @"d:\pandey.csv";
StringBuilder outString=new StringBuilder();
outString.Append("\""); //double quote 
outString.Append("Line 1, Hi I am line 1 of same cell\n");
outString.Append("Line 2 Hi I am line 2 of same cell\n");
outString.Append("Line 3 Hi I am line 3 of same cell\n");
outString.Append("Line 4 Hi I am line 4 of same cell");
outString.Append("\""); //double quote             
File.WriteAllText(filePath, outString.ToString());
8fq7wneg

8fq7wneg6#

CSV代表“逗号分隔值”,它只是对文本文件的描述。如果你想导入到Excel中,然后只有一行的句子,你应该尝试:

Environment.NewLine

简单/n的安装

相关问题