zoukankan      html  css  js  c++  java
  • .net 科学类型相关问题

    Q:如果我要把使用科学记数法表示的string转换为int又该如何呢?

    A:你可以通过把NumberStyles.AllowDecimalPoint | NumberStyles.AllowExponent(把两个NunberStyles枚举进行位运算,其中前者说明可能存在小数点,而后者则说明可能存在科学记数法的指数符号)作为第二个参数传递给Int32类的

    或者

    如果解析出来的结果与int不兼容的,就要考虑把结果储存在别的类型了。例如"1.412e2"就应该把解析结果存放到float或者double或者decimal类型的变量里,当然,你也应该使用与储存变量相对应的类型的方法来解析:

    整个字符串表达式应该没有任何任何空格,否则将有可能抛出异常。

    科学记数法的格式为[{+|-}]m.dddddd{e|E}[{+|-}]xx,可以分解为以下几种形式:

    • [-]m.dddddde+xx
    • [-]m.dddddde-xx
    • [-]m.ddddddE+xx
    • [-]m.ddddddE-xx

    下面列举一些不能正常解析的:

    • "1.412 e3"
    • "1.412E 3"
    • "1.412e +3"
    • "141200E- 2"

    Q:如何处理待解析string里所包含的空格?

    A:对于字符串的前缀或后缀空格,你同样有多种选择,一般情况下,你可以直接使用String类的

    来取掉头尾可能包含的空格:

    又或者,你使用NumberStyles.AllowLeadingWhite | NumberStyles.AllowTrailingWhite来告诉Parse或TryParse待解析字符串的头尾可能包含着空格。

    如果待解析的字符串使用科学记数法来表示,那么你可以

     解决方法:

    其中NumberStyles.Float告诉Parse方法待解析的字符串可能前缀或后缀的空格、前缀正负号、(十进制)小数点、科学记数法指数表示等。

    http://blog.csdn.net/luyifeiniu/article/details/1011480

  • 相关阅读:
    fiddler教程--拦截并篡改
    string
    希尔排序(缩小增量排序)
    k-选取问题
    完善版本散列表
    c++ BST继承自二叉树
    DEDECMS与DZ论坛如何整合,DEDE网站调用DZ内容
    DEDECMS如何实现定时发布文章
    DEDECMS如何设置图片上传加水印
    DEDE如何制作不同背景的列表
  • 原文地址:https://www.cnblogs.com/zhangwei595806165/p/3305328.html
Copyright © 2011-2022 走看看