繁体   English   中英

如何在不替换小数的情况下将小数转换为字符串?

[英]How do I convert a decimal to a string without replacing decimals?

我有一个对象CellData ,它等于-0.000009482102880653542

将其导出为.csv文件时,我想按原样显示。 为此,我必须将对象转换为字符串。

output = CellData.ToString();
output = string.Format("{0}", CellData);

以上两种情况导致output-9.48210288065354E-06 我希望它将output返回为-0.0000094821028806535423 (带小数)。

无论如何,我可以使它正常工作吗?

如果将数字存储为小数,它将以非科学(正常)表示法输出。 根据数据的来源,您可能需要从double转换:

double myNumber = -0.0000094821028806535423;
Object CellData = new Decimal(myNumber);

(-0.00000948210288065354),或者您可以直接使用小数:

Object CellData = -0.0000094821028806535423m;

如果从double转换,则结果不太精确,因为double不能完全代表所有数字,并且对它们执行的计算越多,最终得到的精确结果就越多。

如果数字起源于您的代码,并且您不需要对其进行任何计算,则也可以直接将其存储为字符串。

尝试不使用

output = string.Format("{0}", CellData);

只留下

output = CellData.ToString(); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM