-1

我得到以下代码:

Console.WriteLine("## Last 3 houres: ##\nHashrate: " + dsplit[2].Replace("\"hashrate\":", ""));

dsplit 是一个字符串。它必须是一个字符串。现在 dsplit 将包含一个大数字,在我的例子中是:“25018979863.514” 现在我需要将小数位移动 9 位,在这个例子中得到“25.01”。有什么想法可以有效地实现这一点吗?

4

1 回答 1

3

如果要将小数位向左移动 9 位(假设您要向下舍入否则您的示例结果将为 25.02):

var input = 25018979863.514;
var output = Math.Floor(input * 0.0000001) * 0.01; // = 25.01

因此:

var input = Convert.ToDecimal(dsplit[2].Replace("\"hashrate\":", "")); 

Console.WriteLine("## Last 3 houres: ##\nHashrate: {0}",
    Math.Floor(input * 0.0000001) * 0.01);
于 2013-07-17T02:08:01.677 回答