Mar*_*der 10 c# decimal tostring string-formatting
我刚才知道小数以某种方式记住存储一个数字需要多少trailaing零.换句话说:它记住了分数的大小.
例如:
123M.ToString() ==> resuls in: 123
123.00M.ToString() ==> resuls in: 123.00
123.450M.ToString() ==> resuls in: 123.450
Run Code Online (Sandbox Code Playgroud)
我正在寻找一个格式化字符串或另一个技巧来摆脱那些"不需要的"尾随零,但保持有效数字.所以:
123M.ToString() ==> resuls in: 123
123.00M.ToString() ==> resuls in: 123
123.450M.ToString() ==> resuls in: 123.45
Run Code Online (Sandbox Code Playgroud)
删除新字符串末尾的零对我来说不是一个真正的选择,因为那时我必须找出字符串是否包含一个分数,如果是,还必须删除可选的'.'.或','取决于文化等
Mik*_*ins 11
有几种方法可以做到这一点,但是既然你要转换为String对象,我想你可以试试这样的东西:
myDecimalVariable.ToString("G29");
或者,使用上面的代码,假设123.00M是你的小数:
123.00M.ToString("G29");
以下是该简洁示例如何工作的解释:
带有数字的G格式表示格式化许多有效数字.因为29是十进制可以具有的最高有效数字,所以这将有效地截断尾随零而不进行舍入.
| 归档时间: |
|
| 查看次数: |
17531 次 |
| 最近记录: |