导出双精度到Excel-十进制分隔符问题
本文关键字:十进制 分隔符 问题 Excel- 双精度 | 更新日期: 2023-09-27 17:58:28
使用Microsoft.Office.Interop.Excel.将双格式数据导出到Excel时遇到问题
像这样的数字
-4965454324566(使用逗号作为小数分隔符)
在代码中导出为
-4965454324566
没有逗号、点或任何十进制分隔符。
只有像这样的数字
0988946533164
即小于1,以正确的格式导出。
我尝试过使用NumberFormat,但我没有任何整数或十进制小数位数的限制,也就是说,我想要像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 = "#,#";
以及NumberFormat的变体,如"0,0"、"#0,#0"。。。
使用逗号作为小数分隔符,您不使用en-US Regional设置。您需要检查以确保Excel知道这一点,或者在将数字发送到Excel之前将其转换为en-US设置。ToString()重载中有一些函数可以使用。
i.ToString(new System.Globalization.CultureInfo("en-US").NumberFormat);