You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修正并合并包含多个根元素的JSON内容

合并多根元素JSON的解决方案

标准JSON规范仅允许存在单个根元素,你给出的内容属于行式JSON(JSON Lines)格式,每一行是独立的JSON对象,不符合常规JSON解析器的要求,可根据使用场景选择以下两种合并方案:

方案1:合并为数组格式(通用方案)

将所有独立JSON对象放入一个数组的方括号内,对象之间用逗号分隔,修正后内容如下:

[
  {"a": 1},
  {"a": 2},
  {"a": 3}
]

该格式兼容所有标准JSON解析器,适合绝大多数批量数据处理场景。

方案2:合并为单个根对象(需区分对象时使用)

如果需要为每个对象设置唯一标识,可以封装到一个顶层JSON对象中,示例如下:

{
  "record_1": {"a": 1},
  "record_2": {"a": 2},
  "record_3": {"a": 3}
}

批量大文件处理方法

如果需要处理的文件体量较大,可以用工具快速完成转换:

  • Linux/macOS 环境可直接使用jq工具,执行命令 jq -s '.' 原文件路径 > 输出文件路径 即可直接将行式JSON转换为数组格式
  • 也可以用Python快速处理,示例代码如下:
import json

res = []
# 读取行式JSON文件
with open("input.jsonl", "r", encoding="utf-8") as f:
    for line in f:
        line_content = line.strip()
        if line_content:
            res.append(json.loads(line_content))
# 输出标准JSON数组
with open("output.json", "w", encoding="utf-8") as f:
    json.dump(res, f, indent=2, ensure_ascii=False)

内容的提问来源于stack exchange,提问作者Marlone L C'las

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 19:36:03