我正在尝试更改对象的格式,可以是整数或小数,以使用下面的自定义格式化程序添加逗号(例如,1000返回为1,000)
string temp => $"{value:n0}"
以上工作正常但是当值为十进制时,它会删除小数点,所以我提出了以下格式,当值为十进制但未返回逗号时保留小数
string temp => $"{value:.#}"
我是否知道更好的方法可以获得以下结果?
1000 to be returned as 1,000
13.00 to be returned as 13
13.1 to be returned as 13.1
我只想在非零时包含小数
答案 0 :(得分:2)
没有标准格式为积分/类型值返回0小数。您可以使用#,###.#
格式返回使用groupind的字符串和带可选十进制数字的小数分隔符。您必须明确指定小数位数。
该行:
Console.WriteLine($"{d:#,###.#}");
以您指定的格式返回字符串:
1000 -> 1,000
13 -> 13
13.1 -> 13.1
1234567.8 -> 1,234,567.8