C# 导出双精度到Excel-十进制分隔符问题

C# 导出双精度到Excel-十进制分隔符问题,c#,decimal,export-to-excel,globalization,separator,C#,Decimal,Export To Excel,Globalization,Separator,使用Microsoft.Office.Interop.Excel将双格式数据导出到Excel时遇到问题 数字如 -4965454324566(使用逗号作为十进制分隔符) 在代码中,将导出为 -4965454324566 不带逗号、点或任何小数分隔符 只有数字像 0988946533164 i、 例如,小于1,则以正确的格式导出 我尝试过使用NumberFormat,但我对整数或小数carachter的数量没有任何限制,也就是说,我想要像123456789或123456789这样的数字。所以我不知

使用Microsoft.Office.Interop.Excel将双格式数据导出到Excel时遇到问题

数字如

-4965454324566(使用逗号作为十进制分隔符)

在代码中,将导出为

-4965454324566

不带逗号、点或任何小数分隔符

只有数字像

0988946533164

i、 例如,小于1,则以正确的格式导出

我尝试过使用NumberFormat,但我对整数或小数carachter的数量没有任何限制,也就是说,我想要像123456789或123456789这样的数字。所以我不知道NumberFormat是否适合我的需要

我只是想展示一下,我在做这样的事情:

Excel.Range cel = (Excel.Range)excel.Cells[1, 1];
cel[r, c] = table.Rows[r][c];
我也试过:

Excel.Range cel = (Excel.Range)excel.Cells[1, 1];
cel[r, c] = table.Rows[r][c];
cel[r, c].NumberFormat = "#,#";

数字格式的变体为“0,0”,“0,#0”…

使用逗号作为十进制分隔符,您不使用en-US区域设置。您需要检查以确保Excel知道这一点,或者在将数字发送到Excel之前将其转换为en US设置。.ToString()重载中有一些函数可以使用

i.ToString(new System.Globalization.CultureInfo("en-US").NumberFormat);