C# 中科学计数法转成正常值

抓取数据的时候碰到科学技术法,查了一些资料,直接贴代码

/// <summary>
        /// 数字科学计数法处理
        /// </summary>
        /// <param name="strData"></param>
        /// <returns></returns>
        private Decimal ChangeToDecimal(string strData)
        {
            Decimal dData = 0.0M;
            if (strData.Contains("E"))
            {
                dData = Convert.ToDecimal(Decimal.Parse(strData.ToString(), System.Globalization.NumberStyles.Float));
            }
            else
            {
                dData = Convert.ToDecimal(strData);
            }
            return Math.Round(dData, 4);
        }

最后Math.Round(dData,4)是四舍五入保留四位小数

时间: 2024-10-24 05:58:40

C# 中科学计数法转成正常值的相关文章

JavaScript中科学计数法转化为数值字符串形式

原文地址:https://www.css88.com/archives/9318(受益匪浅) JavaScript 中经常会碰到数值计算问题,偶尔会在不经意间报一个不是bug的bug.今天来说说一个特殊的例子.我以0.0011BTC 价格买入 0.0002CZR 计算出了的金额是 0.00000022BTC,而 JavaScript 计算出来的金额是 2.2e-7 .值是对的,只是用了科学计数法,也是数值类型.但是问题来了,一般用户用户看不懂 2.2e-7,那么就把它转换成 0.00000022

PHP科学计数法转换成数字

/** * 科学计数法转换成数字 * @param $num * @param int $double * @return int */ function sctonum($num, $double = 5){ if (false !== stripos((string)$num, "E")) { $a = explode("e", strtolower((string)$num)); $b=bcmul($a[0], bcpow((string)10, (strin

科学计数法转发成浮点数表示

private Double scientDouble; public Double getScientDouble() { return scientDouble; } public void setScientDouble(Double scientDouble) { this.scientDouble = scientDouble; } /** * @description:给Double类型赋值过大,或者过小时产生科学计数法. * 把科学计数法转换成浮点数表示 * @author: *

java中科学计数法数字转字符串

开发过程中有可能会遇到很小的数字,在显示过程中就转换成了科学计数法,这种不利于人的观看,于是就有必要转成字符串形式的.so. 将科学计数法的数字转换成字符串: 使用的是java.math的BigDecimal: BigDecimal bd = new BigDecimal("1.1920928955078125e-7"); String str = bd.toPlainString(); 显示结果: 0.00000011920928955078125 亲测好使..

Excel中科学计数法如何转正常显示

当数值型数据达到12位的时候,将以科学计数法的方式显示在单元格内,但是编辑栏仍然正常显示.   右键单击12位数字所在单元格,在弹出的菜单栏中选择设置单元格格式.   在单元格格式中点数字选项卡,点自定义,在类型中输入一个“#”,然后点击确定,设置完之后原来的科学计数法消失,显示为实际的12位数字.   数值型数据最多能存储15位有效数字,如果超过15位,可以事先将单元格格式数字设置成文本. 原文地址:https://www.cnblogs.com/Sunshine-bing/p/1264273

科学计数法转换成正常数值

1.字符串值中包含E等科学计数法,比如12E-2,需要进行转化为普通数值0.12, 2.转化函数如下: private Decimal ChangeDataToD(string strData)        {            Decimal dData = 0.0M;            if (strData.Contains("E"))            {                dData = Convert.ToDecimal(Decimal.Parse

JAVA中科学计数法转换普通计数法

今天发现数据库里汇总的数据有点大,一输出就被自动转化成科学计数法了.后来发现是转换字符串的方法有问题.如下: String a = "11234567.89"; BigDecimal db = new BigDecimal(a); System.out.println("科学计数:" + db.toString()); System.out.println("普通计数:" + db.toPlainString()); 输出: 科学计数:1.123

php基础:查询程序运行时间并且把科学计数法转换成正常数字

$a = microtime(true);echo 'sdfsdfsdf';$b = microtime(true);$c = $b-$a;echo "<br/>";echo $c;//输出为5.0067901611328E-6echo "<br/>"; /*** @param $num   科学计数法字符串  如 2.1E-5*@param int $double 小数点保留位数 默认5位* @return string 输出为字符串型数字

科学计数法 与 普通数字 转换

// 科学计数法   转成   普通数字 BigDecimal bd = new BigDecimal("3.40256010353E14");        String str = bd.toPlainString();        System.out.println(str); // 普通数字    转成   科学计数法 Double d = Double.parseDouble("456846889000");        d = Math.pow(d