Types .Net,转换为“;8.33329E-2“;百分之

Types .Net,转换为“;8.33329E-2“;百分之,types,Types,我在读excel,有一个单元格表示预算总成本的百分比 在excel中,它看起来像8%,但一旦我读了它,就会得到字符串8.33333329E-2 我有点糊涂了 使用什么样的正确数据类型和解析技术来避免数据丢失?您可能将excel单元格格式设置为0个十进制数字,因此您看到了错误的值,而0.0833333是实际值 如果您确实希望将其设置为0.08(或8%),请在excel中对该值进行四舍五入。您可能将excel单元格格式设置为0个十进制数字,因此您会看到错误的值,而0.0833333是实际值 如果您确

我在读excel,有一个单元格表示预算总成本的百分比

在excel中,它看起来像
8%
,但一旦我读了它,就会得到字符串
8.33333329E-2

我有点糊涂了


使用什么样的正确数据类型和解析技术来避免数据丢失?

您可能将excel单元格格式设置为0个十进制数字,因此您看到了错误的值,而0.0833333是实际值


如果您确实希望将其设置为0.08(或8%),请在excel中对该值进行四舍五入。

您可能将excel单元格格式设置为0个十进制数字,因此您会看到错误的值,而0.0833333是实际值



如果您确实希望它为0.08(或8%),请在excel中对该值进行四舍五入。

类似于
((int)Math.round(value*100)).ToString()+“%”
类似于
((int)Math.Round(value*100)).ToString()+“%”

arrggghhhhh,请使用字符串格式说明符low
value.ToString(“P0”)
。更短,更不容易出错。@leppi你是说你更喜欢看
((int)Math.Round(value*100)).ToString(“P0”)+“%”?数学的一个优点。舍入是你控制它的舍入方式;例如,您可以指定要将0.077显示为7%还是8%。@ChrisW:No,只需
value.ToString(“P0”)
,就可以了。我想现在可以了。知道如何解析它并知道如何显示它。谢谢ChrisW和leppie。arrgggghhhhh,请使用字符串的格式说明符,low
value.ToString(“P0”)
。更短,更不容易出错。@leppi你是说你更喜欢看
((int)Math.Round(value*100)).ToString(“P0”)+“%”?数学的一个优点。舍入是你控制它的舍入方式;例如,您可以指定要将0.077显示为7%还是8%。@ChrisW:No,只需
value.ToString(“P0”)
,就可以了。我想现在可以了。知道如何解析它并知道如何显示它。谢谢克里斯和莱皮,真的。在后台,Excel中的百分比实际上是浮点数,其中1.0表示100%,也就是说,如果在Excel中的单元格中粘贴0.25并将其格式化为百分比,它将显示为“25%”。这就是为什么你的8.333E-2(大约为0.08)在格式化为不带小数点的百分比时显示为8%。Excel根本不应该被碰。@leppie的问题是-现在如何在.Net端使用它,它在Excel中的外观如何:)@Arnis L.:将其转换为字符串或四舍五入,就像上面的答案一样,如果这是您真正想要做的。@leppie它已经是字符串了。我想将其保存在另一种数据类型中,这种数据类型更自然地表示百分比。在后台,Excel中的百分比实际上是浮点数,其中1.0表示100%,也就是说,如果在Excel中的单元格中粘贴0.25并将其格式化为百分比,它将显示为“25%”。这就是为什么你的8.333E-2(大约为0.08)在格式化为不带小数点的百分比时显示为8%。Excel根本不应该被碰。@leppie的问题是-现在如何在.Net端使用它,它在Excel中的外观如何:)@Arnis L.:将其转换为字符串或四舍五入,就像上面的答案一样,如果这是您真正想要做的。@leppie它已经是字符串了。我想将其保存在另一种数据类型中,更自然地表示百分比。