如何用小数有限的c#舍入一个小的double值

时间:2017-06-11 02:45:59

标签: c# c#-4.0 types rounding

我有一个小的双重值

例如:0.00000005;

我需要将它增加135%,结果应该是0.0000001175 ......

然后我需要将它舍入到0.00000012;(因为我的应用程序中长度限制为10个字符,我需要将新值作为字符串输入)

计算结束后我得到了这个结果1.175E-07。 如何将我的值的指数表示法更改为正常形式,然后围绕它?(考虑到我的限制,当然......)

 floating_value =Math.Round((floating_value + ((floating_value / 100) * 135)),8);

 TP = Convert.ToString(floating_value);

 IWebElement SearchInputBox = _ww.Until(ExpectedConditions.ElementIsVisible(By.Id("input-box")));

 SearchInputBox.Clear();
 SearchInputBox.SendKeys(TP);

1 个答案:

答案 0 :(得分:0)

指数表示法只是数字的表示,不用担心它。

具有Math.Round功能的回合数。用逗号ToString("F8")后用8位数打印。此外,还有其他格式here

double a = 0.0000001175;
var result = Math.Round(a,8);
Console.WriteLine(result.ToString("F8"));

将输出:0.00000012

示例:https://ideone.com/uV8f0X

你的案子:

floating_value =Math.Round((floating_value + ((floating_value / 100) * 135)),8);

TP = floating_value.ToString("F8");