使用字符串格式最多显示两位小数或简单整数

我有一个要显示的价格字段,有时可以是100或100.99或100.9,我想要的是仅在为该价格输入小数时才在2个小数位显示价格,例如,如果它是100,则仅显示100而不是100.00,如果价格是100.2,则应显示100.20,类似的100.22应该相同。我用谷歌搜索并遇到了一些例子,但它们与我想要的完全不匹配:

// just two decimal places

String.Format("{0:0.00}", 123.4567); // "123.46"

String.Format("{0:0.00}", 123.4); // "123.40"

String.Format("{0:0.00}", 123.0); // "123.00"

回答:

一个优雅的方法是:

var my = DoFormat(123.0);

随着DoFormat像:

public static string DoFormat( double myNumber )

{

var s = string.Format("{0:0.00}", myNumber);

if ( s.EndsWith("00") )

{

return ((int)myNumber).ToString();

}

else

{

return s;

}

}

不优雅,但在某些项目中以类似的情况为我工作。

以上是 使用字符串格式最多显示两位小数或简单整数 的全部内容, 来源链接: utcz.com/qa/408665.html

回到顶部