Получить значение из переменной json, используя windows powershell 5.1 - PullRequest
0 голосов
/ 08 января 2019

У меня есть такой JSON

[  
   {  
      "Param1":true,
      "Param2":0,
      "Param3":"OK"
      ...
      ...
   }
]

Как я могу получить значение Param2, используя powershell 5.1? На данный момент я пытался получить имена свойств, но только получить длину

$jsondeconverted = $jsonOrig | ConvertFrom-Json
$jsonOrig .PsObject.Properties |
     Select-Object -ExpandProperty Name |
     ForEach-Object {
        Write-Host "Key : " $_
        Write-Host "Value : " $thisJSON."$_"
     }

EDIT Вот так я получаю свой JSON

$jsonvar = '['+$jsonvar+']'
$convertedJson =  $jsonvar | ConvertTo-Json -Depth 10
$deconvertedJson = $convertedJson | ConvertFrom-Json

$ deconvertedJson содержит только параметр длины и ничего более.

1 Ответ

0 голосов
/ 08 января 2019

Вам нужно смотреть на объект ($jsondeconverted), а не на строку ($jsonOrig)

Исходя из вашей структуры json, вы получите доступ к param2 следующим образом $jsondeconverted[0].Param2

Проверяемый полный пример

$jsonorig = '[{"Param1":true,"Param2":0,"Param3":"OK"}]'
$jsondeconverted = $jsonorig | ConvertFrom-Json
$jsondeconverted[0].param2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...