C# - 格式浮点数不带尾零

本文关键字:浮点数 格式 | 更新日期: 2023-09-27 18:17:48

是否可以在 C# 中格式化

4.52浮点数到4.52字符串

4.520 4.52字符串的浮点数,即省略尾零?

编辑:我想我没有强调真正的问题。我需要一种符合上述两个示例的模式!

C# - 格式浮点数不带尾零

假设你想省略你的值中的任何尾随 0,这应该给你你想要的:

ToString("0.####")

否则,您可以执行以下操作:

ToString("0.00##")

有关示例,请参阅此网站。

String.Format("{0:0.00}", 4.520);      // "4.52"

实际上,您不需要模式。 .NET 始终省略浮点数的尾零,除非指定不这样做。

所以Console.WriteLine(4.520)会输出4.52,就像Console.WriteLine(4.52)Console.WriteLine(4.520000000000)一样,Console.WriteLine(4.5)会输出4.5

在上面的示例中,System.Console.WriteLine 方法将在内部调用浮点数上的ToString()(无模式(。

另外,如果您正在寻找更具体的内容,可以查看

http://msdn.microsoft.com/en-US/library/DWHAWY9k(v=vs.71(.aspx

以获取更多数字格式字符串。

所有这些都会导致"4.52":

string formatted = 4.52.ToString();
string formatted = 4.520.ToString();

因为这太容易了,我想知道你的浮点数是否真的是一根绳子:

string formatted = "4.52".Trim('0');
string formatted = "4.520".Trim('0');