Как бы вы разделили следующую переменную json на отдельные элементы массива?Разбить переменную json на отдельные элементы в массивах
[
{
"server":{
"name":"myUbuntuServer1",
"imageRef":"3afe97b2-26dc-49c5-a2cc-a2fc8d80c001",
"flavorRef":"6"
}
},
{
"server":{
"name":"myUbuntuServer2",
"imageRef":"3afe97b2-26dc-49c5-a2cc-a2fc8d80c001",
"flavorRef":"6"
}
},
{
"server":{
"name":"myUbuntuServer3",
"imageRef":"3afe97b2-26dc-49c5-a2cc-a2fc8d80c001",
"flavorRef":"6"
}
}
]
Например, выше будет перевести в массив, со следующими пунктами:
массив-элемент 0
{
"server":{
"name":"myUbuntuServer1",
"imageRef":"3afe97b2-26dc-49c5-a2cc-a2fc8d80c001",
"flavorRef":"6"
}
}
Массив-пункт 1
{
"server":{
"name":"myUbuntuServer2",
"imageRef":"3afe97b2-26dc-49c5-a2cc-a2fc8d80c001",
"flavorRef":"6"
}
}
Массив -item 2
{
"server":{
"name":"myUbuntuServer3",
"imageRef":"3afe97b2-26dc-49c5-a2cc-a2fc8d80c001",
"flavorRef":"6"
}
}
Я хотел бы сделать это в Powershell 2.0 и получить доступ к каждому из них по отдельности. До сих пор это то, что мне удалось достичь:
$jsonarr = @()
$arr = (Get-Content C:\json.json| Out-String).replace("[","") -split "(})," -replace "]",""
$jsonarr += $arr[0..1] -join ""
$jsonarr += $arr[2..3] -join ""
$jsonarr += $arr[4]
Однако это крайне негибким, и перестанет работать в ту же минуту я была подробно другого сервера в файл JSON.
Ваша переменная * * уже ** массив с тремя элементами. –
Как я могу получить доступ к каждому из них индивидуально? – methuselah
Я обновил вопрос с дополнительной информацией, надеюсь, это обеспечивает больше контекста. – methuselah