导出的CSV数据在Excel中没有正确显示

我有一个gridview导出到.csv文件。 当我输出数据时,如果有一个像10-10这样的值,并且它在excel中打开,则显示为“10-oct”。 我该怎么做才能让它显示为“10-10”?

虽然这只是使用Excel 2003进行testing,并可能导致其他问题,这对我工作:

 1,3,10-10,a / *显示为10-Oct * /
 1,4,10-10,b / *显示为10-10(注意前导空格)* /
 1,3,10-10,a / *显示为10-Oct * /

您可以告诉Excel单元格是TEXT而不是date。 当然,这样做你将需要把它保存为XLS文件。

Right Click > Format Cells > Under Number tab > Select Text instead. 

与奥斯丁所说的类似,你可以用一个单引号( ' )作为参数值,这个引号可以避免自动格式化,并把比赛当作TEXT

 1,3,'10-10,a 

正如在评论中指出的那样,这个解决scheme在一些程序中起作用,但不是所有版本的excel。 如果这是非常重要的,你可能需要考虑直接导出到.xls或其他丰富的格式。

这不就是Excel只是“哦,看起来像一个date”吗?

查看数据的另一个应用程序可能不会试图解释它。

右键单击在Excel中的列,单击格式,然后将其设置为“文本”而不​​是“一般”。

如果您正在浏览导入向导,则可以告诉Excel如何解释每一列。

如果您更改.csv文件中的数据,如下所示…,=“10-10”,…这将以Excel格式显示为…,10-10,…

Excel将保留数据作为公式,但复制列和使用粘贴特殊值将摆脱公式,但保留格式