如果值为0,如何防止插入货币符号

本文关键字:何防止 插入 货币 符号 如果 | 更新日期: 2023-09-27 18:20:19

我想问一下,如果值为0,有没有办法防止插入美元符号?

我正在使用字符串函数Format使货币符号@string.Format("{0:C}",0))更新我的输出为$0.00

如果值为0,如何防止插入货币符号

制作一个扩展方法来实现这一点:

public static string ToCurrency(this int value)
{
   return value == 0 ? value.ToString("N2") : value.ToString("C");
}

您可以使用由;分隔不同部分的三部分自定义格式字符串。第一节介绍了适用于正数的格式;第二种适用于负数;第三个适用于零:

const string format = "{0:$#,0.00;-$#,0.00;0.00}";
string.Format(format, 1.23d) // =>  $1.23
string.Format(format, -1.23d) // => -$1.23
string.Format(format, 0d) // => 0.00

遗憾的是,这只适用于自定义格式,这意味着您不能在单独的部分中使用像C这样的内置说明符。这样做的一个后果是,您不能依赖于系统根据线程文化选择要包含的货币符号;必须将其直接包含在格式字符串中。