我有一个问题,找不到解决方案。我有像 85.12343 或 100 或 1.123324 这样的数字(十进制)。我想以这样的方式格式化它,结果总是 13 个字符长,包括分隔符。

100 --> 100.000000000
1.123324 --> 1.12332400000

我尝试使用 toString,但失败了。我怎么能这样做?

谢谢 :)

最佳答案

int digits = 13;
decimal d = 100433.2414242241214M;
int positive = Decimal.Truncate(d).ToString().Length;
int decimals = digits - positive - 1; //-1 for the dot
if (decimals < 0)
    decimals = 0;
string dec = d.ToString("f" + decimals);

需要时,它不会从整个部分中删除数字,只会删除分数。

关于c# - .NET 中的动态数字格式?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3717545/

10-13 00:57