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

如何将巨型JSON数组拆分为独立的JSON对象?

拆分大型JSON数组为独立JSON对象

针对包含数百万甚至上亿条嵌套对象的大型JSON文件,直接加载整个文件到内存会引发内存溢出问题,必须采用流式处理方案,以下两种方法高效且实用:

方法1:Python + ijson(适合编程定制场景)

ijson是一款流式JSON解析库,无需加载整个文件即可逐元素处理,完美适配超大型文件。

  1. 安装依赖:
pip install ijson
  1. 处理脚本示例:
import ijson
import json

# 流式读取原始大JSON文件,逐行输出目标格式
with open("input.json", "rb") as infile, open("output.json", "w") as outfile:
    # 遍历顶层对象中"a"数组的每个元素
    for item in ijson.items(infile, "a.item"):
        # 将元素包装为目标格式并写入,每行一个独立JSON对象
        outfile.write(f'{{"a": {json.dumps(item)}}}\n')

方法2:jq命令行工具(无需编码,快速批量处理)

jq是专门处理JSON的命令行工具,内置流式处理能力,适合快速完成批量转换。

直接执行以下命令:

jq -c '.a[] | {"a": .}' input.json > output.json
  • -c:将每个JSON对象压缩为单行输出,便于后续存储或处理
  • .a[]:遍历顶层对象中a数组的所有元素
  • {"a": .}:将每个元素包装为{"a": 原元素}的目标格式

内容的提问来源于stack exchange,提问作者mani_nz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 18:31:00