您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> .NET >> ToString方法不显示为科学计算法???????

ToString方法不显示为科学计算法???????

来源:网络整理     时间:2016/6/25 8:45:46     关键词:

关于网友提出的“ ToString方法不显示为科学计算法???????”问题疑问,本网通过在网上对“ ToString方法不显示为科学计算法???????”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: ToString方法不显示为科学计算法???????
描述:

程序里封装了一个字段,object类型,
这个object类型字段是通过(int、float、double等数值类型)装箱得到。 现在我需要将object.tostring() 现在的问题就是,如果数据比较大的话,会把数据显示成科学计算法显示。 如果处理才能原封不动的tostring呢?包括总的位数还有小数点位数。。。


解决方案1:

你的数据无非就是两个整数字中间加了一个小数点而已     实在不行就先按小数点拆开 把两个整数转化为 ToDecimal 然后再转化为 tostring()相加肯定是不会出现问题的既不会成为科学计算法也不会把你小数点后面的数字干掉

解决方案2:

http://www.cnblogs.com/dudu/archive/2011/11/21/2257100.html

解决方案3:

Convert.ToString()
解决方案4:

Convert.ToString()
解决方案5:

如果你的数据精度确定的可以推介你这样。。ToString("00.00");格式化一下如果不确定。。。再想想。

解决方案6:

是不是在装箱之前就以经变成科学计数法了? 如果之前有转换的话,把Convert.ToDouble换成Convert.ToDecimal试试

解决方案7:

引用 6 楼  的回复:
 float f = 1234567891.24F;                         Console.WriteLine(f.ToString("0.00")); 你看这个数会变成什么 会变成 1234568000.00
这明摆着进位了。
这个没用的<>  float f = 1234567891.24F; //float本来就不精确。你可以运行一下下面的代码,对比一下。  float p1 = 1234567891.24F;
            double p2 = 1234567891.24;             double p3 = 1234567891.24F;             Console.WriteLine(p1);             Console.WriteLine(p2);             Console.WriteLine(p3); 解决方案8:

直接让这个字段是字符型的,转成数字的时候可以随便处理。

解决方案9:

你经过了装箱 和 拆箱操作,其实在装箱的时候系统就已经处理了,该近位的进位,该指数的指数
后面的一切操作都无济于事 因此,你要改变源头,而不是数据发生变化了,再去还原,本身你要得到原先的不变值,那么就不该这么装箱操作,直接保存成字符串就可以了

解决方案10:

ToString("0.0000000")小数点后面几位数,就写几个0


以上介绍了“ ToString方法不显示为科学计算法???????”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2056299.html

相关图片

相关文章