我的JSON如下
{
"Root": [{
"Child": [{
"Id": "1"
}],
"Child1": [{
"Id": "2"
}]
}]
}
我的内容如下
$content = (Get-Content -filepath) -join "`n" | ConvertFrom-Json
我需要的是如果我从脚本传递为Child1,我需要提取以下节点并显示
"Child1": [{
"Id": "2"
}]
答案 0 :(得分:2)
由于您使用的是PS3 +,而不是加入线条(速度很慢),请通过 @Override
public void run() {
while(true){
String line = buffer.getData();
if(line != null){
System.out.println(line);
//do stuff with the data.
}
}
}
将文件作为一个字符串读取:
-Raw
按名称过滤,显示没有名称的内容:
$content = Get-Content $filepath -Raw | ConvertFrom-Json
在PS2.0中:
$name = 'Child1'
$content.Root.$name | ConvertTo-Json
按名称过滤,显示名称和内容:
$content.Root | Select -expand $name | ConvertTo-Json
按$name = 'Child1'
($content.Root | select $name | ConvertTo-Json) -replace '^.|.$',''
过滤,显示内容:
Id
按$content.Root | ForEach { $_.PSObject.Properties.Value | Where Id -eq 2 } |
ConvertTo-Json
过滤,显示节点的名称和内容:
Id