Sco*_*ord 46 c# format decimal tostring
我想将字符串格式化为十进制,但十进制在小数点后包含一些后续零.我如何格式化它以使那些无意义的0消失?
string.Format("{0}", 1100M);
string.Format("{0}", 1100.1M);
string.Format("{0}", 1100.100M);
string.Format("{0}", 1100.1000M);
Run Code Online (Sandbox Code Playgroud)
显示:
1100
1100.1
1100.100
1100.1000
Run Code Online (Sandbox Code Playgroud)
但我希望它是:
1100
1100.1
1100.1
1100.1
Run Code Online (Sandbox Code Playgroud)
作为参考,这里有其他问题基本上与此重复,我感谢这里给出的答案:
Her*_*tar 80
您可以使用ToString()与常规("G")格式说明,以达到预期的效果.使用具有指定精度的此格式字符串时,将截断尾随零.为了防止在任何情况下进行舍入,您需要将精度设置为小数的最大允许值(29).
产生你想要的代码行,你的原始十进制number.ToString("G29")在哪里number.
请注意,任何小于0.0001的数字都将转换为科学记数法.有关此格式化程序如何工作的更多详细信息,请参阅上面的参考链接.
Jas*_*Alt 21
string s = d.ToString("0.#############################");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
80037 次 |
| 最近记录: |