我有这样的JSON
[
{
"Param1":true,
"Param2":0,
"Param3":"OK"
...
...
}
]
如何使用Powershell 5.1获取Param2值? 现在,我尝试获取属性名称,但只获取长度
$jsondeconverted = $jsonOrig | ConvertFrom-Json
$jsonOrig .PsObject.Properties |
Select-Object -ExpandProperty Name |
ForEach-Object {
Write-Host "Key : " $_
Write-Host "Value : " $thisJSON."$_"
}
编辑 这就是我获取json的方式
$jsonvar = '['+$jsonvar+']'
$convertedJson = $jsonvar | ConvertTo-Json -Depth 10
$deconvertedJson = $convertedJson | ConvertFrom-Json
$ deconvertedJson仅包含长度参数,仅此而已。
答案 0 :(得分:3)
您需要查看对象($jsondeconverted
)而不是字符串($jsonOrig
)
根据您的json结构,您将以以下方式访问param2 $jsondeconverted[0].Param2
可验证的完整示例
$jsonorig = '[{"Param1":true,"Param2":0,"Param3":"OK"}]'
$jsondeconverted = $jsonorig | ConvertFrom-Json
$jsondeconverted[0].param2