Golang 实现的一款通用型 JSON 数据提取工具,支持自动识别 JSON 数据节点并有序提取为 CSV 文件。
Convenient JSON data extraction tool.

使用简介

Json2Csv:请指定 JSON 格式文件路径(支持批量)...
Json2Csv [-k root.data.items] data.json data2.txt ...
Usage of main.exe:
-h 显示帮助
-k string
设置 Json 中数据所处路径,如'-k root.topics.data'

支持以下常见 JSON 数据格式:

数据位于根 /一级节点下

[{"ID":0,"Name":"Lucy","Age":17,"Granted":true},{"ID":1,"Name":"Lily","Age":20,"Granted":false}]
或者
{"part":1,"items":[{"title":"one","price":23},{"title":"two","price":92},{"title":"three","price":5623}]}

数据提取命令:Json2Csv test1.json test2.json

拖放 json 文件到主程序或命令行均可运行,如 JSON 数据位于根 /一级节点下程序可自动检测并提取

数据位于任意多级节点下
{"data":{"items":[{"title":"one","price":23},{"title":"two","price":92},{"title":"three","price":5623}]}}
数据位于"data.items"多级节点下,-k 参数简单指定数据路径即可,如
数据提取命令:Json2Csv -k data.items test.json
测试文件:-k 参数 JSON 示例

说明

  • 为什么不用在线服务?
    内网数据隐私不能公开; JSON 文件较大(比如超过 20M)大多数在线服务都无法支持。
  • 为什么不用 Pandas 等?
    内网 python 和常用库的安装维护等都很麻烦; Python 工具只能自己用(分享不便);每个 json 都要分析后对应编写测试代码通用性欠佳; Pandas 默认会导致长数据输出科学计数法很麻烦...
  • 为什么不用 utools/jq 等工具?
    这些工具提取 json 中个别字段的文本很方便,但想将所有数据批量输出却很麻烦;而且使用门槛较高 jq 兼容性较差,比如 json 文件识别报错、不支持 win7 系统等等
    Github 链接:https://github.com/playGitboy/Json2Csv