给csv写两个单词,打开的时候会在一个excel列中显示为两行

我正在使用C#来处理notepead中的一些数据,这些数据在处理之后将写入.csv文件。 我已经这样做了,但问题是,在.csv文件的一列中,有些词必须出现两三行(相当于在Excel列中使用Alt + Enter)。 我使用了Environment.NewLine,\ r和\ n。 但我不能把它closures。 有没有办法,或根本不可能? 提前致谢。 印度Unnikrishnan。

尝试这个:

"\"Hallo" + (char)10 + "World\""

您需要ASCII代码10以换行符和开头和多行string中的引号。

但是,如果您在Excel中打开csv文件,则必须知道多行单元格的行高不会自动调整。

我认为这是不可能的。 为了能够这样说,我从Excel中导出,用NotePad查看生成的包含多行的文件,然后尝试导入它:它有两个单元格。

如果您的需要不是CSV格式本身,而是在Excel中查看数据的能力,我build议您生成一个Html文件,这个文件可以被Excel很好的识别。

您只需将其命名为“.xls”,以允许最终用户通过双击打开它。 这种方法的唯一问题是双击文件时的警告安全信息。

例如 :

 <html> <head> <style type="text/css"> .withBorder { border:1px solid #000000; } </style> </head> <body> <table class="withBorder"> <tr> <td class="withBorder">First line</td> <td class="withBorder">with a second field</td> </tr> <tr> <td class="withBorder" style="border-bottom:none;">this is a</td> <td class="withBorder" rowspan="2" >with also a second field</td> </tr> <tr> <td class="withBorder" style="border-top:none;">multiline test</td> <tr> <td class="withBorder">Last line</td> <td class="withBorder"></td> </tr> </table> </body> </html> 

要查看Excel支持的Htmlfunction,您可以在Excel中手动创build预期结果,将其导出到Html文件(仅限当前工作表或select),然后查看底层代码。

我总是使用Html格式,因为它比CSV更灵活。 没有数字格式的问题,颜色处理,边框,特殊标志…

最好的祝福,