如何在导出到csv时保留小数精度并用excel打开

我已经将值导出到c#中的csv文件。

csv文件每个值都有5个小数位,但是当用excel打开时,小数位数减less为2。

有没有一种编程方式确保在csv在Excel中打开时保留小数位?

var nFI = new NumberFormatInfo(); nFI.NumberDecimalDigits = precision; line += (CsvEscape(((decimal)dr[colName]).ToString("N", nFI)) + ","); 

这是如何将小数输出到csv。

输出到csv文件时,要保留小数位,请用双引号括住该值,并在其前加'='符号。 (请原谅,代码仍然是原型)

 line += ("=" + '"' (((decimal)dr[colName]).ToString("N",nFI).Replace(",",""))+ '"' + ","); 

这输出为=“63000.00000”,

您是否使用格式提供程序( NumberFormatInfo )用于任何其他目的? 如果您省略了ToString()的格式化参数,则应该按原样输出。