将Float显示为具有至少1个小数位的字符串

时间:2011-11-07 16:00:04

标签: c# string string-formatting

我希望将float显示为字符串,同时确保显示至少一个小数位。如果有更多小数,我希望显示这些小数。

例如: 1应显示为1.0 1.2345应显示为1.2345

有人可以帮我使用格式字符串吗?

4 个答案:

答案 0 :(得分:23)

使用ToString(“。0 ############”)和你想要的#小数一样多。

答案 1 :(得分:10)

此解决方案类似于其他人所说的,但我更喜欢使用string.Format。 例如:

float myFloat1 = 1.4646573654;
float myFloat2 = 5;
Console.WriteLine(string.Format("Number 1 : {0:0.00##}", myFloat1));
Console.WriteLine(string.Format("Number 2 : {0:0.00##}", myFloat2));

// Newer Syntax
Console.WriteLine($"{myFloat1:0.00##}";
Console.WriteLine($"{myFloat2:0.00##}";

这会产生:

Number 1 : 1.4646
Number 2 : 5.00
Number 1 : 1.4646
Number 2 : 5.00

答案 2 :(得分:0)

试试这个:

doubleNumber.ToString( “0.0 ###”);

并且,供您参考(双ToString方法):http://msdn.microsoft.com/en-us/library/kfsatb94.aspx

答案 3 :(得分:0)

float fNumber = 1.2345; // Your number
string sNumber = fNumber.ToString(); // Convert it to a string
If ((sNumber.Contains(".") == false) && (sNumber.Contains(",") == false)) // Check if it's got a point or a comma in it...
{
    sNumber += ".0"; // ... and if not, it's an integer, so we'll add it ourselves.
}
相关问题