Excel值对于十进制来说太大或太小

时间:2015-04-23 10:24:53

标签: c#

我有一个带指数形式的数值,我从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中的值,我必须显示没有指数且没有四舍五入

2 个答案:

答案 0 :(得分:0)

你需要读入一个double,因为数字较大,不适合小数。

您可以在不使用指数和舍入的情况下格式化输出。请参阅此处的MS文档:https://msdn.microsoft.com/en-us/library/kfsatb94%28v=vs.110%29.aspx

答案 1 :(得分:0)

我认为您必须使用类似BigInteger的数据类型。

BigInteger Structure MSDN

Example