Double.ToString 方法的问题
我正在使用这个:
dSize.ToString("#.#", System.Globalization.CultureInfo.CurrentCulture);
其中dSize
是一个double
。当 dSize
类似于 2.5
时,它工作正常 BUT 如果 dSize
类似于 3
> - 所以它没有小数部分 - 它返回 "3"
这是错误的。我希望它返回 "3.0"
所以仍然保留一位小数。
有什么想法吗?
I am using this:
dSize.ToString("#.#", System.Globalization.CultureInfo.CurrentCulture);
Where dSize
is a double
. it works fine when dSize
is something like 2.5
BUT if dSize
is something like 3
- so it does not have decimal part - it is returning "3"
which is wrong. I want it to return "3.0"
so still with one decimal point.
Any thoughts?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
查看自定义数字格式字符串 以及自定义数字格式字符串输出示例< MSDN 上的 /a>。
这些应该与@Timwi 提供的答案结合起来有用。
Take a look at Custom Numeric Format Strings as well as Custom Number Format Strings Output Examples on MSDN.
Those should prove useful in conjunction with the answer that @Timwi provided.
使用
0
指示即使数字为零也应打印该数字:这将打印
.3
而不是0.3
;如果您还想打印小数点之前的数字,请也使用0
:Use a
0
to indicate that the digit should be printed even if it is zero:This will print
.3
instead of0.3
; if you want the digit before the decimal point to be printed too, use a0
there as well:使用
#
是一个数字占位符,如果该位置的数字中有数字,则会打印该占位符。0
是一个数字占位符,如果该位置有 1,则打印该数字;如果该位置没有数字,则打印 0。参考:自定义数字格式字符串
Use
#
is a digit placeholder and will be printed if there is a digit in the number in that position.0
is a digit placeholder that will print the digit if there is one, or zero if there is no number in that position.Reference: Custom Numeric Format Strings