我有一个带指数形式的数值,我从excel文件中获取它,我用decimal.parse解析它。有些值正在完美地解析,但我收到错误"对于十进制,值太大或太小。"在一些价值观 例如,我有8.996812E + 31的价值 我正在解析它
var cellval = decimal.Parse(colData[j].ToString(), System.Globalization.NumberStyles.Float);
其中colData [j] =" 8.996812E + 31"它给了我异常值对于十进制而言太大或太小。
我该如何处理?我尝试使用double和float但两者都显示Exponent中的值,我必须显示没有指数且没有四舍五入
答案 0 :(得分:0)
你需要读入一个double,因为数字较大,不适合小数。
您可以在不使用指数和舍入的情况下格式化输出。请参阅此处的MS文档:https://msdn.microsoft.com/en-us/library/kfsatb94%28v=vs.110%29.aspx
答案 1 :(得分:0)