易君召
易君召
发布于 2026-11-11 / 11 阅读
0

JSON vs CSV 优缺点对比

一句话总结

  • CSV:扁平表格格式,适合纯二维表数据、大数据批量导出导入,简单省空间;不擅长嵌套结构。

  • JSON:半结构化文档格式,支持嵌套、数组、对象,通用性强,是接口主流;冗余更大,解析开销更高。

详细对比表

维度

CSV

JSON

结构能力

扁平二维,一行一条记录,只能简单列;不支持嵌套、层级、对象、数组

支持对象、数组、多层嵌套,能表达复杂树形结构

可读性

肉眼表格化,适合 Excel 直接打开查看;但字段多了容易乱,缺少表头时很难读懂

键值对形式,结构清晰;格式化后好读,压缩版一行 JSON 很难直接看

解析 / 序列化

解析简单,工具成熟;但是要处理引号、换行、逗号转义坑(逗号在内容里会崩)

解析逻辑更复杂,需要完整 JSON 解析器;大部分编程语言原生支持

文件体积

同等简单数据下体积更小,分隔符只有逗号 / 换行,开销低

有大量引号、冒号、括号,冗余字符多,同等数据一般更大

数据类型

弱类型,全部是字符串,数字、日期、布尔都要业务层自己转;没有 null 原生区分

自带类型:string/number/bool/null/array/object,类型信息保存在数据里

适用场景

数据库导出、报表、日志、大数据离线批处理、给业务人员看表、ETL、导入 Excel

HTTP 接口(RESTful)、配置文件、Mongo 等文档库、传递复杂对象、前后端交互

兼容性

Excel、WPS、Hive、Spark、大数据工具友好;跨系统表格交换

几乎所有现代开发语言、API 标准;老旧表格软件支持差

缺点

1. 不能嵌套2. 转义麻烦(逗号、换行、双引号)3. 没有数据类型4. 缺少元信息,表头容易丢失

1. 冗余字符多,大文件占空间2. 大文件流式解析麻烦3. 手写容易写错括号、逗号

优点

1. 轻量、紧凑2. 适合表格类批量数据3. 人工看报表方便4. 流式逐行读取很简单

1. 表达能力强,复杂结构首选2. 自描述(key 说明字段含义)3. 是互联网接口事实标准4. 天然支持数组列表

典型选型建议

✅ 选 CSV:

  • 二维表格、百万级、千万级批量数据导出、离线 ETL、给运营打开 Excel 看报表

  • 只需要字段 + 值,没有嵌套列表

✅ 选 JSON:

  • 前后端接口交互、微服务调用

  • 数据有嵌套(比如一条订单包含多个商品数组)

  • 程序配置、文档数据库存储

补充:如果是超大规模 JSON,经常会用 JSON Lines(jsonl),一行一条 JSON,兼顾 JSON 结构 + CSV 流式读取的优势,是大数据领域很常用的折中方案。


本文原创作者:易君召,详见:https://www.yijunzhao.cn/authors/yijunzhao,转载请注明出处。

原文链接 https://www.yijunzhao.cn/archives/json-vs-csv-pros-cons-comparison

欢迎访问 小易撩挨踢

https://www.yijunzhao.cn/