如何将双精度格式设置为四舍五入到最接近的美元的货币?
现在我有
double numba = 5212.6312
String.Format("{0:C}", Convert.ToInt32(numba) )
This will 给我,
$5,213.00
但我不想要“.00”。
我知道我每次都可以删除字符串的最后三个字符来达到效果,但似乎应该有一种更简单的方法。
Right now I have
double numba = 5212.6312
String.Format("{0:C}", Convert.ToInt32(numba) )
This will give me
$5,213.00
but I don't want the ".00".
I know I can just drop the last three characters of the string every time to achieve the effect, but seems like there should be an easier way.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
首先 - 不要将货币保存在
double
中 - 使用decimal
代替。 每次。 然后使用“C0”作为格式说明符:First - don't keep currency in a
double
- use adecimal
instead. Every time. Then use "C0" as the format specifier:这应该可以完成工作:
C
后面的数字指定要包含的小数位数。我怀疑您确实想使用
decimal<然而,用于存储此类数字的 /code>
类型。
This should do the job:
The number after the
C
specifies the number of decimal places to include.I suspect you really want to be using the
decimal
type for storing such numbers however.单击查看控制台输出屏幕
希望这可以帮助您...
谢谢。 :)
click to see Console Out Put screen
Hope this may Help you...
Thanks. :)
我认为实现你的目标的正确方法是这样的:
只有这样你才应该进行 Format 调用:
I think the right way to achieve your goal is with this:
and only then you should do the Format call:
简单:
numba.ToString("C2")
更多 @ http://msdn.microsoft.com/pt-br/library/dwhawy9k(v=vs.110).aspx#CFormatString
simple:
numba.ToString("C2")
more @ http://msdn.microsoft.com/pt-br/library/dwhawy9k(v=vs.110).aspx#CFormatString