在小数后打印出零到excel

时间:2014-02-06 14:21:29

标签: c# excel console.writeline

我正在尝试打印出double以表现出色。在我的GUI中,数字打印正确。

但是当我将数字写入excel文件时,数字会在小数位后面输出零。例如,数字1.10在我的GUI中正确打印出来,但在excel中打印出1.1

double foo = 1.10;
writeline(foo.ToString("F2"));

我在尝试String.Format("{0:0.00}", foo.ToString("F2"));时没有解决此问题。我很确定问题是当数字进入excel时,excel会在小数位后截断所有零。有没有办法发送excel消息打印小数点后的两个地方?

我正在开发一些可以打开和关闭excel文件的代码。他们正在使用File.CreateStreamWriter来创建和打开Excel文件

2 个答案:

答案 0 :(得分:2)

String.Format("{0:0.00}", foo.ToString("F2"));

将无法正常工作,因为您正在尝试格式化某些已经转换为字符串的内容。 使用直接变量 - 你的foo应该返回一个数值,然后你就可以像这样使用它(例子):

String.Format("{0:0.00}", foo.GetDouble("F2"));

换句话说:

String.Format("{0:0.00}", "1.10");    //wrong
String.Format("{0:0.00}", 1.10d);     //correct

答案 1 :(得分:0)

我已经看到了一个简单问题的太多复杂答案,我也有同样的问题,这就是为什么我来到这里但我没有得到任何合理的答案。我想通了,只要突出显示列,右键单击它----格式化单元格-----将出现一个对话框,进入类别---数字,然后添加任意数量的小数位