JSON 转 CSV 转换器
将任何 JSON(嵌套对象、对象数组、包装响应)转换为干净的 CSV。支持智能数组定位、点/括号扁平化、架构发现预览、自定义分隔符以及一键示例。
检测到广告拦截,导致我们无法展示广告
MiniWebtool 依靠广告收入免费提供服务。如果这个工具帮到了你,欢迎开通 Premium(无广告 + 更快),或将 MiniWebtool.com 加入白名单后刷新页面。
- 或升级 Premium(无广告)
- 允许 MiniWebtool.com 显示广告,然后刷新
JSON 转 CSV 转换器
欢迎使用 JSON 转 CSV 转换器,这是一个免费的在线工具,可以将任何 JSON 负载(包括扁平数组、嵌套对象、深层包装的 API 响应)展平为整洁、可直接用于电子表格的 CSV 文件。大多数在线转换器仅能处理根目录下的 [{...}, {...}] 等简单情况,而当您的 JSON 结构类似于 {"data": {"items": [...]}} 时则会失效。本工具具有智能自动检测表格数组的功能,提供 JSONPath 样式的选择器以处理特殊形状,并提供两种展平模式(点表示法和括号表示法)以及架构预览,让您在下载前确切知道电子表格中将显示哪些列。
JSON 转 CSV 转换器有什么用途?
JSON 是 Web API 和现代数据管道的通用语言,而 CSV 仍然是电子表格、商业智能 (BI) 仪表板和数据分析工具的首选。在两者之间进行转换是数据工程师日常工作中最常见的任务之一。典型的应用场景包括:将 API 响应导出到 Excel 以供利益相关者查看;准备 JSON 转储以便导入 Postgres 或 BigQuery;将 JSON 日志输入 Pandas 或 R 进行分析;以及快速以更友好的表格形式扫描繁琐的嵌套响应。
主要功能
- 智能数组自动检测: 转换器会遍历您的 JSON 并选择最大、最像表格的数组——这通常就是您真正想要的。
- JSONPath 选择器: 使用
data.users或results[0].rows之类的路径覆盖自动检测,深入查找包装好的响应。 - 两种展平模式: 点表示法 (
address.city) 用于生成整洁的列名;括号数组表示法 (tags[0],tags[1]) 适用于每个元素都应作为独立列的情况。 - 架构发现: 带有类型徽章(字符串、整数、数字、布尔值、混合)的列标签面板,方便您在下载前审核输出内容。
- 实时预览表: 前八行将渲染为 HTML 表格——瞬间验证您的数据是否对齐正确。
- 自定义分隔符: 逗号 (CSV)、分号 (欧洲 Excel)、制表符 (TSV)、竖线或您指定的任何单个字符。
- 引号模式: 最小化 (RFC 4180)、全部引用、非数字引用或从不引用(使用反斜杠转义)。
- Excel 友好换行符: 在 LF 和 CRLF 之间切换。
- 可选标题行。
- 一键示例: 扁平数组、包装响应、嵌套对象、GitHub 风格 API 和天气预报。
- 复制和下载: 立即获取 CSV 内容或保存为
.csv文件。
转换器如何处理嵌套对象和数组?
现实世界的 JSON 很少是扁平的。该转换器的展平引擎可以智能地处理两种主要形状:
嵌套对象 → 点表示法
对象内部的对象会变成带有点号的列名。因此,像 {"id": 1, "address": {"city": "Tokyo", "zip": "100-0001"}} 这样的记录会产生三列:id、address.city、address.zip。这种约定被 Pandas json_normalize、Splunk、Elasticsearch 和许多其他工具所采用——您的下游管道可以直接识别它。
嵌套数组 → 两种策略
标量数组(例如 "tags": ["red", "blue"])和对象数组(例如 "orders": [{...}, {...}])的处理方式取决于所选的展平模式:
- 点模式: 标量数组在单个单元格中用竖线字符连接 (
red|blue);对象数组则被 JSON 编码以确保数据不丢失。这可以保持列数的可预测性。 - 括号模式: 每个元素都会获得自己的索引列——
tags[0]、tags[1]、orders[0].id、orders[0].total。最适合记录中包含已知固定长度数组的情况。 - 保留嵌套为 JSON: 嵌套结构被序列化为 JSON 字符串并插入一个单元格。当目标电子表格具有 JSON 感知列或您想保留原始形状时很有用。
JSONPath 选择器是做什么用的?
大多数公共 API 都会在其数据中包装额外的元数据:状态码、分页信息、请求 ID。典型的响应如下:
自动检测通常能找到内部数组,但对于不寻常或深度嵌套的形状,您可以显式提供路径。选择器支持点号键名和带括号的数字索引:
data— 进入data键data.users— 先进入data,再进入usersresults[0].rows—results的第一个项目,然后是其rows键(空)— 自动检测最像表格的数组
它会生成 Excel 兼容的 CSV 吗?
是的。默认设置(逗号分隔符、最小引号、标题行、LF 换行符)生成严格的 RFC 4180 输出,可以在 Excel、Google Sheets、Numbers、LibreOffice Calc、Pandas read_csv、R read.csv 以及各种数据库的 COPY FROM 命令中完美打开。对于使用分号作为字段分隔符的欧洲 Excel 区域设置,请将“分隔符”下拉菜单切换为 分号。对于偏好 \r\n 换行符的 Windows 原生工具,请将“换行符”切换为 CRLF。
如何处理各行中缺失的字段?
JSON 数组通常包含异构记录——一个对象有 middle_name,下一个则没有。转换器会遍历每条记录并按“首次见到”的顺序收集列名;任何缺少某列的记录在该位置都会获得一个空单元格。这与 Pandas json_normalize 的行为相同,避免了静默丢弃仅在某些记录中出现的字段。
实际应用案例
对于开发者
- 将 REST API 响应转换为 CSV,以便在电子表格中进行探索
- 展平 MongoDB 或 Firestore 导出内容,以便导入关系型数据库
- 将 JSON 日志行转换为表格格式进行分析
- 通过将示例 JSON 与括号模式输出结合来生成测试固件
对于数据分析师和科学家
- 无需编写 Pandas 脚本即可快速以表格形式预览 API 数据
- 准备网络爬虫抓取的 JSON 数据,以便导入 Excel、Tableau 或 Power BI
- 将 JSON 数据集转换为 CSV,以便在 Jupyter 或 RStudio 中使用
- 在实际导入前,使用架构发现面板审核嵌套字段
对于营销和运营人员
- 将生成 JSON 的工具(分析、CRM 导出)中的数据导出到 Google Sheets
- 基于 JSON API 输出构建数据透视表或图表
- 向非技术利益相关者提供友好的 CSV,而无需展示原始 JSON
如何使用此工具
- 粘贴 JSON: 将 JSON 粘贴到输入框中,或单击“快速示例”按钮加载典型的 API 负载。
- 选择数组: 留空 JSONPath 字段让工具自动检测表格数组,或输入类似
data.users的路径以定位包装数组。 - 选择展开模式: 选择“点表示法”以获得整洁的列名,“括号数组”以扩展每个数组元素,或“保留嵌套为 JSON”以逐字保留子结构。
- 选择分隔符和引号: 选择逗号、分号、制表符 (TSV)、竖线或自定义字符,然后选择引号模式和换行符。
- 转换并查看: 点击“转换为 CSV”。检查架构面板和预览表,然后复制结果或将其下载为
.csv文件。
获得最佳结果的技巧
- 先进行验证: 输入框下方的实时指示器会在您点击“转换”之前标记 JSON 语法错误。
- 检查架构面板: 标记为 mixed 的列意味着同一字段在不同记录中具有不同类型——这通常是上游摄取 Bug 需要修复的信号。
- 对固定数组使用括号模式: 如果每条记录都正好有(例如)四个分数值,括号模式会为您提供四个整洁的列,而不是单个用竖线连接的单元格。
- 针对欧洲 Excel: 选择 分号 分隔符,这样
1,5(一点五)就不会被拆分成两个单元格。 - 针对 Windows 上的 Excel: 选择 CRLF 换行符以避免“所有内容都在 A 列”的问题。
- 为了安全起见引用所有内容: 如果您的数据包含逗号、换行符或您的分隔符字符,请选择 所有字段加引号 以获得最稳妥的输出。
常见问题解答
如果我的 JSON 有多个数组会发生什么?
自动检测会选择包含对象最多的那个数组。如果那不是您想要的数组,请提供 orders 或 line_items 之类的 JSONPath 来定位正确的数组。
我可以转换单个 JSON 对象而不是数组吗?
可以——单个对象将变成单行 CSV,每个顶级字段作为一列。展平规则仍然适用。
如何处理包含非有限数字(NaN, Infinity)的 JSON?
标准 JSON 不允许这些字面量,但如果您的输入包含它们并能成功解析,它们会在 CSV 输出中转换为空单元格,以保持文件有效性。
为什么有些布尔值渲染为 true / false?
为了保持 CSV 的可读性。如果您的下游工具需要 1 / 0,请在下载后进行查找替换,或预先处理 JSON。
转换器是否验证所有记录具有相同的形状?
不验证——异构记录会被妥善处理(缺失字段变为空单元格)。架构面板通过 mixed 徽章显示类型偏移,以便您发现不一致之处。
我可以转换多大的 JSON?
该工具在浏览器和服务器上都能轻松处理几兆字节 (MB) 以内的 JSON 输入。对于非常大的数据集(数十 MB 或更多),建议使用离线流式工具,如 jq 或使用 ijson 的 Python 脚本。
我的数据会被发送到服务器吗?
转换是在 MiniWebtool 服务器上执行的,以利用 Python 强大的 CSV 写入器和 JSON 解析器。我们不会记录、存储或共享您的输入。响应在提供时带有不缓存标头。对于敏感数据的最高机密性,建议进行离线处理。
其他资源
引用此内容、页面或工具为:
"JSON 转 CSV 转换器" 于 https://MiniWebtool.com/zh-cn/json-转-csv-转换器/,来自 MiniWebtool,https://MiniWebtool.com/
由 MiniWebtool 团队开发。更新日期:2026年4月25日
其他相关工具:
其他文字工具:
- 相同字母异序词生成器
- 仿生阅读转换器 新
- 比较两个字符串
- 找最长一行工具
- AI语言检测器 精选
- 文本行处理器
- XML验证器 精选
- 文本转语音阅读器 新
- 文本列提取器 新
- JSON转YAML转换器 新
- 正则表达式测试器 新
- 文本差异对比工具 新
- CSV转JSON转换器 新
- 图片Base64转换器 新
- API测试工具 新
- ASCII码表 新
- Webhook测试器 新
- AI博客标题生成器 新
- AI 话题标签生成器 新
- AI标语生成器 新
- AI文章大纲生成器 新
- 在线记事本 新
- TOML 转 JSON 转换器 新
- JSON 转 CSV 转换器 新
- XML转JSON转换器 新
- SQL到MongoDB查询转换器 新