将此浮点数转换为正确的小数

问题描述 投票:0回答:1

我很难尝试将其从JSON属性转换为常规小数:

[DBG]:PS C:\ scripts >> $ token.balance 8,8458571112536E + 20

我希望它为884.58571112536而不是8,8458571112536E + 20

我怎么能在powershell中这样转换?

谢谢 !

powershell
1个回答
0
投票

8,8458571112536E+20不等于884.58571112536,它是884585711125360000000

当您从json转换8,8458571112536E+20时,它将被转换为字符串。要将其更改为数字,您可以将,替换为.,然后将其转换为十进制,如下所示:

$json = "{'balance' : '8,8458571112536E+20' }"
$token = ConvertFrom-Json -InputObject $json
$token.balance = [Decimal]([Double]::Parse($token.balance.Replace(',','.')))
$token.balance

在输出中显示884585711125360000000

© www.soinside.com 2019 - 2024. All rights reserved.