/// <summary>
/// 判断输入的数是否是科学计数法。如果是的话,就会将其换算成整数并且返回,否则就返回false。
/// </summary>
/// <param name="num"></param>
/// <param name="CompleteNum"></param>
/// <returns></returns>
private bool ChkNum(string num, ref decimal CompleteNum)
{
bool result = false;
bool resultSymbol = num.Contains("*");
bool result0 = num.Contains("^");
if ((resultSymbol == true) && (result0 == true))
{ //当数字中有*和^的时候,进行下面的判断
int IntSymbol = num.IndexOf("*");
int Symbol0 = num.IndexOf("^");
if (((Symbol0 - IntSymbol) == ))
{//当*在^前面的时候
string numA = num.Substring(, IntSymbol);//截取*号前面的数字(基数);
string numB = num.Substring(IntSymbol+, Symbol0 - IntSymbol-);//截取10;
string numC = num.Substring(Symbol0+, num.Length - Symbol0-);//获得幂次数
Regex regNum0 = new Regex(@"^(\-|\+)?\d+(\.\d+)?$");
Regex regNum2 = new Regex(@"^-[1-9]\d*$|^[1-9]\d*$");
if ((regNum0.IsMatch(numA)) && (numB == "") && (regNum2.IsMatch(numC)))
{
decimal dcNumA;
decimal.TryParse(numA,out dcNumA);
decimal dcNumC;
decimal.TryParse(numC, out dcNumC);//将幂次数转换成decimal类型
decimal zhengshu = ;
if (dcNumC > )
{//当幂次数为整数的时候
for (int i = ; i < dcNumC - ; i++)
{
zhengshu *= ;
}
}
else
{//当幂次数为负数的时候
for (int i = ; i < Math.Abs(dcNumC) + ; i++)
{
zhengshu /= ;
}
}
CompleteNum = dcNumA * zhengshu;
result = true;
}
else
{
result = false;
}
}
else
{
result = false;
}
}
else
{
result = false;
}
return result;
}

C# 科学计数法转换成数字的更多相关文章

  1. PHP科学计数法转换成数字

    /** * 科学计数法转换成数字 * @param $num * @param int $double * @return int */ function sctonum($num, $double ...

  2. Java将Excel中科学计数法解析成数字

    需要注意的是一般的科学表达式是1.8E12 1.8E-12 而在Excel中的科学表达式是1.8E+12 1.8E-12 我写的科学计数法的正则表达式是(-?\d+\.?\d*)[Ee]{1}[\+- ...

  3. java科学计数法转换成普通计数法

    java科学计数法转换成普通计数法: String sjiachun = "12345E-10"; BigDecimal db = new BigDecimal(sjiachun) ...

  4. [SoapUI] 重载JSONComparator比对JSON Response,忽略小数点后几位,将科学计数法转换为普通数字进行比对,在错误信息中打印当前循环的case number及其他附加信息

    重载JSONComparator比对JSON Response,忽略小数点后几位,将科学计数法转换为普通数字进行比对,在错误信息中打印当前循环的case number及其他附加信息 package d ...

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

    今天发现数据库里汇总的数据有点大,一输出就被自动转化成科学计数法了.后来发现是转换字符串的方法有问题.如下: String a = "11234567.89"; BigDecima ...

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

    抓取数据的时候碰到科学技术法,查了一些资料,直接贴代码 /// <summary> /// 数字科学计数法处理 /// </summary> /// <param nam ...

  7. 导出csv文件数字会自动变科学计数法的解决方法

    其实这个问题跟用什么语言导出csv文件没有关系.Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0.解决 ...

  8. 转:导出csv文件数字会自动变科学计数法的解决方法

    导出csv文件数字会自动变科学计数法的解决方法   其实这个问题跟用什么语言导出csv文件没有关系.Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科 ...

  9. mysql导出csv文件excel打开后数字用科学计数法显示且低位变0的解决方法

    Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0. Excel打开csv文件时,只要字段值都是数字,它 ...

随机推荐

  1. java 静态方法和实例方法的区别(转)

    静态方法和实例方法的区别主要体现在两个方面:   在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对象名.方法名"的方式.而实例方法只有后面这 ...

  2. BASH 漏洞修复

    Red Hat在Bash Shell中发现了一个名为Bash Bug的安全漏洞,当用户正常访问时,该漏洞允许攻击者的代码像在Shell中一样执行,这样就为各种各样的攻击打开了方便之门.据悉,其严重性要 ...

  3. 如何保护.net中的dll文件(防破解、反编译)

    如何保护.net中的dll文件(防破解.反编译) 2010-07-19 15:08 [小 大] 来源: 赛迪网 评论: 0 分享至:      百度权重查询 词库网 网站监控 服务器监控 SEO监控  ...

  4. 去除angularjs路由的显眼的#号

    在接触到angularj并完成第一个demo后,惊奇地发现居然还可以这样开发前端界面.个人喜欢的一个功能点就是ng的路由功能,可以很好地将视图放入多个文件中.但最基础的使用会给url添加一个显眼的#, ...

  5. 根据不同分辨率加载不同 css 样芪表

    <script language=javascript> <!-- if (screen.width == 800) { document.write('<link rel=s ...

  6. 批量删除wps文档里的回车符的方法!WPS使用技巧分享!

    有时候整理文档的时候,如果是从网上复制的文字,可能会因为复制而产生很多的回车符.怎样能批量去掉这些个回车符呢,下面马上告诉你批量删除wps文档里的回车符的方法!WPS使用技巧分享! 想要批量删除批量删 ...

  7. db2数据库安装注意几个问题

    1.安装数据库的时候,db2用户使用的是系统中的用户.创建完数据库你会发现你电脑多了一个用户(可以在控制面板中查看到) 2.安装完数据库需要创建数据库.打开命令行cmd(注意一定要用管理员身份打开,不 ...

  8. 转@OneToMany或@ManyToOne的用法-annotation关系映射篇(上)

    原文:http://blog.sina.com.cn/s/blog_6fef491d0100obdm.html 例如我们用一个例子来开启JPA的一对多和多对一的学习. 比如你去当当网上买书籍,当当网就 ...

  9. C#有关数组内存的释放及动态数组问题

    一.数组内存释放问题 数组内存的释放可以按照如下语句实现: string [] aa=new string[2]; aa[0]="A"; aa[1]="B"; ...

  10. How browsers work

    这几天翻译一篇旧文 How browsers work ( 以现代浏览器chrome.火狐.safari 为对象来分析),这篇文章网上有其他的翻译版本,自己再翻译一遍主要是练习阅读英文文章,而且自己翻 ...