我想获得与组分隔符的Double值的字符串输出,并没有任何文化中的精度损失。无论如何没有写我自己的方法来做到这一点呢?双ToString格式没有精度丢失和组分隔符
我知道你可以使用ToString(“N0”),但这会导致精度损失。 我知道你可以使用ToString(“R”)来保持精度,但是这不包括组分隔符。
E.g. 对于Double.MaxValue在固定区域性我想
"179,769,313,486,231,570,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000"
编辑:当我说在精度损失我的意思是整体数字显著的数字,而不是没有价值的“decmial”部分失去精度。我希望能够使用组分隔符进行“往返”,所以ToString - > Parse - > ToString。
编辑2:为了更好地比较我在这里试图解决的问题,使用了ToString(“N0”)时的输出。在这里你可以看到的显著数字结尾的四舍五入:
"179,769,313,486,232,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000"
没有什么像*精确*双。 – CriketerOnSO 2014-11-20 16:47:10
http://stackoverflow.com/questions/2863388/what-is-the-equivalent-of-the-java-bigdecimal-class-in-c – 2014-11-20 16:51:52
['decimal'](http://msdn.microsoft.com /en-us/library/364x0z75.aspx) – 2014-11-20 16:52:23