【问题标题】:How to parse JSON array into separate files using Powershell?如何使用 Powershell 将 JSON 数组解析为单独的文件?
【发布时间】:2022-10-24 02:54:24
【问题描述】:

PowerShell 脚本将提供此输入文件:

{
    "array": [
        {
            "field1": "value1",
            "field2": "value2", 
            "field3": "value3",
            "field4": "value4",
            "field5": "value5"
        },
        {
            "field1": "value6",
            "field2": "value7", 
            "field3": "value8",
            "field4": "value9",
            "field5": "value10"
        }
    ]
}

我需要将其分解为单独的 json 文件。文件 1 名称:file1.json

{
   "field1": "value1",
   "field2": "value2", 
   "field3": "value3",
   "field4": "value4",
   "field5": "value5"
}

文件2名称:file2.json

{
   "field1": "value6",
   "field2": "value7", 
   "field3": "value8",
   "field4": "value9",
   "field5": "value10"
}

【问题讨论】:

  • 你试过什么?请分享您解决此问题的尝试
  • 欢迎来到堆栈溢出。我们不是脚本编写服务。我们希望用户告诉我们他们迄今为止尝试过的内容(包括他们正在使用的任何脚本)以及他们遇到的问题,以便我们可以帮助解决具体问题。试试Get-Help ConvertFrom-Json -OnlineGet-Help ConvertTo-Json -Online。然后,edit 分享您的问题minimal reproducible example

标签: json powershell


【解决方案1】:

使用ConvertFrom-Json解析输入文件,然后使用ConvertTo-Json导出每个单独的对象在数组中:

# import and parse input
$data = Get-Content .path	oinput.json |ConvertFrom-Json

$count = 0
foreach($item in $data.array){
  $count++
  # export each array item as json
  $item |ConvertTo-Json |Set-Content "file${count}.json"
}

【讨论】:

    猜你喜欢
    • 2021-07-01
    • 2020-03-25
    • 1970-01-01
    • 2018-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-03
    相关资源
    最近更新 更多