一句话总结
详细对比表
维度 | 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:
✅ 选 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/