Skip to content
data2026-07-252 分钟阅读

什么是 CSV 和 JSON

CSV(Comma-Separated Values,逗号分隔值)是一种简单的表格数据格式,每行是一条记录,字段用逗号分隔。

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,使用键值对表示数据,支持嵌套结构。

对比示例

CSV 格式:

name,email,age
张三,zhang@example.com,28
李四,li@example.com,32

JSON 格式:

[
  { "name": "张三", "email": "zhang@example.com", "age": 28 },
  { "name": "李四", "email": "li@example.com", "age": 32 }
]

CSV vs JSON 的特点

| 特性 | CSV | JSON | |------|-----|------| | 可读性 | 表格直观 | 结构清晰 | | 嵌套支持 | ❌ 不支持 | ✅ 支持 | | 类型信息 | 无(全为字符串) | 有(字符串、数字、布尔等) | | 文件大小 | 较小 | 较大 | | 适用场景 | 表格数据导入导出 | API 数据交换 | | Excel 兼容 | ✅ 原生支持 | ❌ 需要转换 |

为什么需要 CSV/JSON 转换

  1. 数据导入导出:Excel 导出 CSV,后端需要 JSON 处理
  2. API 开发:数据库导出 CSV,转换为 JSON 提供给前端
  3. 数据分析:Python/R 处理 CSV,Web 可视化需要 JSON
  4. 数据迁移:不同系统之间的数据格式转换
  5. 配置管理:简单配置用 CSV,复杂配置用 JSON
  6. 日志分析:CSV 日志转为 JSON 结构化处理

如何使用在线转换器

使用 DevToolkit Pro 的 CSV/JSON 转换器

  1. 粘贴 CSV 或 JSON 数据
  2. 工具自动检测格式并转换
  3. 支持自定义分隔符、引号处理
  4. 实时预览转换结果

代码中的转换

JavaScript:CSV 转 JSON

function csvToJson(csv, delimiter = ',') {
  const lines = csv.trim().split('\n');
  const headers = lines[0].split(delimiter).map(h => h.trim());
  return lines.slice(1).map(line => {
    const values = line.split(delimiter);
    return headers.reduce((obj, header, i) => {
      obj[header] = values[i]?.trim() ?? '';
      return obj;
    }, {});
  });
}

Python:JSON 转 CSV

import csv
import json

def json_to_csv(json_data, filename):
    if not json_data:
        return
    keys = json_data[0].keys()
    with open(filename, 'w', newline='', encoding='utf-8') as f:
        writer = csv.DictWriter(f, fieldnames=keys)
        writer.writeheader()
        writer.writerows(json_data)

FAQ

CSV 中的逗号怎么办?

如果字段本身包含逗号,需要用引号包裹该字段:"上海, 浦东"。或者使用制表符(TSV)作为分隔符。

为什么 CSV 转 JSON 后数字变成了字符串?

CSV 没有类型信息,所有值都是文本。转换时需要额外逻辑来识别数字和布尔值。


本文由 DevToolkit Pro 提供。更多开发者工具请访问 首页


ad