小编典典

C# Double - ToString() 格式有两位小数但没有四舍五入

all

如何在 C# 中将 a 格式化Double为 aString以便只有两位小数?

如果我使用String.Format("{0:0.00}%", myDoubleValue)数字,则四舍五入,我想要一个简单的截断而不进行任何四舍五入。我还希望转换对String文化敏感。


阅读 109

收藏
2022-07-16

共1个答案

小编典典

我使用以下内容:

double x = Math.Truncate(myDoubleValue * 100) / 100;

例如:

如果号码是 50.947563 并且您使用以下内容,则会发生以下情况:

- Math.Truncate(50.947563 * 100) / 100;
- Math.Truncate(5094.7563) / 100;
- 5094 / 100
- 50.94

你的答案被截断了,现在要格式化字符串,只需执行以下操作:

string s = string.Format("{0:N2}%", x); // No fear of rounding and takes the default number format
2022-07-16