将十进制转换为百分比或移位小数位。怎么样

时间:2010-06-09 19:14:30

标签: c# decimal

我有一个由两个数字的差异生成的,但它返回例如0,77表示7%和0,5表示50%我只想修复达到这些数字,如15,2%13 % 等等。我怎样才能做到这一点?为了做到这一点,c#是否嵌入了CLR?

2 个答案:

答案 0 :(得分:19)

您可以使用Percentage自定义Numeric Format String。这样就可以实现,而不必自己繁殖。

例如,你可以这样做:

double value = 0.152;
string result = value.ToString("#0.##%");

如果您的语言环境设置为欧洲语(我的猜测基于您编写的格式),您将获得一个值为“15,2%”的字符串。

如果您对默认格式感到满意,也可以使用标准百分比(“P”)Format String

答案 1 :(得分:2)

看看那里:Custom Numeric Format Strings

 double number = .2468013;
Console.WriteLine(number.ToString("P", CultureInfo.InvariantCulture));
// Displays 24.68 %
Console.WriteLine(number.ToString("P", 
                  CultureInfo.CreateSpecificCulture("hr-HR")));
// Displays 24,68%     
Console.WriteLine(number.ToString("P1", CultureInfo.InvariantCulture));
// Displays 24.7 %