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

.net 科学类型相关问题的更多相关文章

  1. JavaScript中的Undefined / Null 类型相关说明

    1,综述: ※Undefined 和 Null是JavaScript中的两种数据类型(其他的类型还有:Boolean, String, Number, Object). ※Undefined类型只有一 ...

  2. redis的hash, list, set类型相关命令

    hash相关命令: 1. hset HSET key field value 将哈希表key中的域field的值设为value.如果key不存在,一个新的哈希表被创建并进行hset操作.如果域fiel ...

  3. MongoDB中数组类型相关的操作

    概述 在MongoDB的模式中,我们经常将一些数据存储到数组类型中,即我们常见的嵌套模式设计的一种实现方式.数组的这种设计实现方式在关系数据库中是没有或者说不常见的.所以,通过本文我们来梳理一下Mon ...

  4. ycsb-命令及参数-与生成的负载类型相关

    loadbin/ycsb load mydb -P workloads/workloada -p "mydb.host=127.0.0.1" -p "mydb.port= ...

  5. 四:redis的sets类型 - 相关操作(有序和无序集合)

    ================四十五种(有序和无序集合):sets种类(它是一个集)=============      简介:  set它代表的集合.加入是随意添加----->无序集合    ...

  6. Redis字符串类型相关操作命令

    string是redis最基本的类型,可以包括任何类型数据,如jpg图片或者序列化对象. 单个value最大上限是1G字节 如果只使用string类型,redis就可以被看做具有持久化特性的memca ...

  7. boolean类型相关

    如果逻辑对象无初始值或者其值为 0.-0.null."".false.undefined 或者 NaN,那么对象的值为 false.否则,其值为 true(即使当自变量为字符串 & ...

  8. JavaScript类型相关常用操作

    JS数组,字符串,json互相转换 JS数组转字符串 使用数组自带的join方法可以把数组转化为字符串: let arr = [1,2,'uu']; let str = arr.join(','); ...

  9. c++ STL 常用容器元素类型相关限制 指针 引用

    c++ 的 STL 中主要有 vector , list, map, set  , multimap,multiset 这些容器完全支持使用内置类型和指针(指针注意内存泄露问题). 就是说乱用智能指针 ...

随机推荐

  1. MongoDB - MongoDB CRUD Operations, Query Documents, Project Fields to Return from Query

    By default, queries in MongoDB return all fields in matching documents. To limit the amount of data ...

  2. MongoDB - The mongo Shell, Configure the mongo Shell

    Customize the Prompt You may modify the content of the prompt by setting the variable prompt in the  ...

  3. JOSN传字符串方法

    #region 提示信息 /// <summary> /// 操作失败(无参数) /// </summary> /// <returns></returns& ...

  4. MyElcipse之问题小结

    运行MyEclipse时,遇到这一错误提示: An internal error occurred during: "Launching chat on MyEclipse Tomcat & ...

  5. 集合框架学习之Collection和Map详解

    线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构.这些类均在java.util包中.本文试图通过简单的描述,向读者阐述各个类的作用以 ...

  6. 表情键盘及文字表情识别简单demo

    1.前言 了解了简单图文混排 (属性字符串的使用)及 正则表达式的部分知识,为了加深印象,写了个简单表情键盘demo 展示文字用的是 UITextView 由于时间匆忙,存在一些bug,以及不完善的地 ...

  7. 【转载】#273 - Parameter Modifier Summary

    Here's a summary of the different parameter modifiers and how the behavior changes for each, when us ...

  8. ECC校验原理以及在Nand Flash中的应用

         本篇文章主要介绍ECC基本原理以及在Nand Flash中的应用,本文记录自己对ECC校验原理的理解和学习. ECC介绍      ECC,全称为Error Correcting Code, ...

  9. mobileconfig文件的签名和认证(signed、verified)

    专题:基于IOS上MDM技术相关资料整理及汇总mobileconfig文件的签名和认证(signed.verified) 一.功能描述: 鉴于我们的设备和MDM server之间已经可以通信,并能完成 ...

  10. android SDK启动的错误

    1. AVD Manager.exe : failed to execute tools android.bat 请把AVD Manager.exe复制到跟 SDK Manager.exe的相同目录下 ...