🤖 AI 跟我学 新手入门

AI 格式转换:CSV/JSON 互转 prompt 模板

AI 格式转换教程:用一句话让 AI 把 CSV 转 JSON、Excel 转 JSON、JSON 拍平成 CSV,含 6 个真实场景 prompt 模板、嵌套对象处理思路和编码乱码兜底方案

发布 2026/05/20 📎 参考官方文档

你做前端,后端给了一份 200 行的 CSV,让你”转成 JSON 喂给 API”。你做运营,技术给了一份 JSON 接口返回,让你”导成 Excel 给老板看”。你做数据,要把 50 个嵌套对象的 JSON 拍平成表格做透视。这三种活儿手写代码能写半小时,让 AI 格式转换 30 秒搞定。

CSV / JSON / Excel 三种格式之间的互转,本质是”结构映射”——AI 最擅长这种活。Anthropic 官方有一个叫 CSV Converter 的 prompt 模板,本文把它改写成中文版,再加 6 个真实场景示例 + 嵌套结构 / 中文乱码两个进阶坑。

为什么不直接用 Excel 自带的”另存为”

Excel 自带 3 个转换功能,3 个都有坑:

  1. 「另存为 CSV」:默认 GBK 编码,中文字段在很多 API 里乱码
  2. 「数据 - 自 JSON」:导入嵌套 JSON 自动拆,但拆出来不一定是你想要的列
  3. 没有「另存为 JSON」:Excel 原生不能直接导出 JSON

AI 帮你做这事的 3 个优势:

  • 自定义嵌套规则:你说”客户信息要嵌套成 customer 子对象”,AI 直接给你结构
  • 批量字段重命名:A 列在 CSV 叫”姓名”,到 JSON 里要叫 “userName”,AI 一句话改
  • 过滤 / 转换:导出时去掉敏感列、把日期格式从 “2026/5/17” 转成 ISO 8601,一步到位

用哪个工具

工具CSV 转 JSONJSON 转 Excel嵌套结构国内可用
Claude优秀优秀优秀需代理
ChatGPT GPT-5优秀优秀优秀需代理
豆包 / Kimi良好良好直接可用
WPS AI良好良好直接可用
在线工具(csvjson.com 等)优秀优秀直接可用

如果数据量在 1000 行以内,AI 单次能搞定。超过 5000 行让 AI 给一段 Python / JavaScript 脚本 本地跑更靠谱。

万能 prompt:CSV/JSON 互转专家

下面这段套到任何 AI 都能用:

📋 Prompt 模板

你是一位资深数据转换专家,擅长在 CSV、JSON、Excel、TSV、XML、YAML 之间互转。

我的需求:

  • 源格式:[CSV / JSON / Excel / TSV / …]
  • 目标格式:[CSV / JSON / Excel / TSV / …]
  • 转换规则:[字段映射 / 嵌套结构 / 字段过滤 / 格式转换]
  • 数据规模:[行数 / 字段数]

源数据: ``` [在这里粘贴源数据,CSV 直接贴文本,JSON 贴对象] ```

期望结构: [描述目标格式的字段名、嵌套层级、数据类型]

特殊要求:

  • 字符编码:[UTF-8 / GBK]
  • 日期格式:[ISO 8601 / yyyy-MM-dd / 时间戳]
  • 数字格式:[保留几位小数 / 是否带千分位]
  • 空值处理:[null / 空字符串 / 删除字段]
  • 字段重命名:[源字段名 → 目标字段名]

请按以下格式输出:

转换后的数据

[直接贴转换后的完整结果]

转换说明

[列出每个字段如何映射、做了哪些处理]

验证样例

[给 1-2 行源数据 + 对应的目标数据,方便我手动核对]

如果数据规模超过 1000 行

[给一段 Python 或 Node.js 脚本,能本地跑相同的转换]

下面 6 个场景示范怎么填。

6 个真实场景示例

场景 1:CSV 转 JSON(最常见)

源数据:

id,name,email,city
1,张三,[email protected],北京
2,李四,[email protected],上海

发给 AI 让它转 JSON,得到:

[
  { "id": 1, "name": "张三", "email": "[email protected]", "city": "北京" },
  { "id": 2, "name": "李四", "email": "[email protected]", "city": "上海" }
]

字段名、数据类型 AI 自动判断(id 是数字、name 是字符串)。

场景 2:CSV 转嵌套 JSON

需求:把扁平 CSV 转成有嵌套结构的 JSON。

源 CSV:

user_id,user_name,addr_city,addr_street,addr_zip
1,张三,北京,长安街 1 号,100001

期望 JSON(addr 字段嵌套):

[
  {
    "userId": 1,
    "userName": "张三",
    "address": {
      "city": "北京",
      "street": "长安街 1 号",
      "zip": "100001"
    }
  }
]

prompt 里写「按 addr_ 前缀的字段嵌套成 address 子对象,并把 snake_case 转 camelCase」,AI 一次给完。

场景 3:JSON 拍平成 CSV/Excel

源 JSON:

[
  {
    "userId": 1,
    "userName": "张三",
    "orders": [
      { "orderId": "A001", "amount": 100 },
      { "orderId": "A002", "amount": 200 }
    ]
  }
]

拍平规则:每个订单一行,重复用户信息。

userId,userName,orderId,amount
1,张三,A001,100
1,张三,A002,200

prompt 里说”按 orders 数组展开,每个订单一行,外层字段重复”,AI 直接给。

场景 4:CSV 转 SQL INSERT

需求:CSV 数据要导入数据库,转成 SQL INSERT 语句。

INSERT INTO users (id, name, email, city) VALUES
(1, '张三', '[email protected]', '北京'),
(2, '李四', '[email protected]', '上海');

prompt 里说”转成 MySQL INSERT 语句,表名 users,字符串字段用单引号包”,AI 给完整 SQL。1000 行 INSERT 一次性出。

场景 5:JSON 转 YAML(配置文件)

源 JSON:

{
  "server": { "host": "localhost", "port": 8080 },
  "db": { "user": "admin", "password": "***" }
}

转 YAML:

server:
  host: localhost
  port: 8080
db:
  user: admin
  password: '***'

适合给 K8s / GitHub Actions 配置文件做迁移。

场景 6:CSV 转 Markdown 表格(写文档用)

把 CSV 直接转成 Markdown 表格,做技术文档 / 周报 / README 必备

| id | name | email | city |
|---|---|---|---|
| 1 | 张三 | [email protected] | 北京 |
| 2 | 李四 | [email protected] | 上海 |

周报时,把 Excel 数据贴给 AI,秒转 Markdown 表格粘进飞书。

手把手 4 步走

第 1 步:把源数据准备好

3 种粘法:

  1. CSV 文本:直接复制 Excel 一片区域粘到 prompt 里(Excel 复制后是 Tab 分隔的 TSV,AI 也认)
  2. JSON 对象:从 Postman / 浏览器 DevTools 复制 JSON
  3. 截图:截屏粘给 Claude / GPT 也能识别,准确率 90%

第 2 步:描述目标格式

越具体越好:

  • 目标格式(JSON / Excel / YAML)
  • 字段重命名规则(user_id → userId)
  • 嵌套规则(addr_ 前缀嵌套到 address)
  • 特殊处理(空值转 null、日期转 ISO、敏感字段删除)

第 3 步:拿到结果先小数据验证

3-5 行小数据先转,眼睛核对前后字段是不是对得上。对了再扩到全量。

第 4 步:超过 1000 行让 AI 给脚本

AI 单次输出有上下文上限(通常 500-1000 行的 JSON 就到顶)。超过 1000 行直接让 AI 写一段 Python / Node.js 脚本

import csv, json

with open('input.csv', encoding='utf-8') as f:
    rows = list(csv.DictReader(f))

result = [
    {
        'userId': int(r['user_id']),
        'userName': r['user_name'],
        'address': {
            'city': r['addr_city'],
            'street': r['addr_street'],
        }
    }
    for r in rows
]

with open('output.json', 'w', encoding='utf-8') as f:
    json.dump(result, f, ensure_ascii=False, indent=2)

本地跑 5 秒搞定 10 万行。

5 个让 AI 转换更稳的技巧

技巧 1:贴 2-3 行最有代表性的样本

不要贴 100 行——浪费 token 还容易让 AI 漏字段。贴 2-3 行最典型的(含正常 + 异常 + 边界)就够。

技巧 2:明确”目标字段名”

不要让 AI “自由发挥”字段名。在 prompt 里写:「目标 JSON 字段必须是 userId / userName / email / cityName」,AI 不会乱命名。

技巧 3:单独说明”嵌套规则”

嵌套结构是最容易出错的。建议单独列一段「嵌套规则」明确:

  • 哪些字段要嵌套成子对象
  • 哪些字段要拆成数组
  • 哪些字段要保持扁平

技巧 4:把”日期 / 数字 / 布尔”格式写清楚

CSV 里全是字符串,转 JSON 时要不要变成数字 / 日期 / 布尔?写清楚:

  • “true” / “false” 转布尔
  • “2026-05-17” 转日期对象(或保持字符串)
  • “100” 转数字(或保持字符串)

技巧 5:要求”输出格式校验”

让 AI 在转换后跑一遍 JSON.parse / CSV 解析验证,确保输出能被机器解析。不然贴到 API 报 SyntaxError 又要回去调。

一个常见失败案例 + 怎么救

失败场景:CSV 里有”姓名”列含逗号(如”张三, 张三丰”),直接转 JSON 时 AI 把它拆成 2 个字段。

救援步骤

  1. 告诉 AI 数据特征:「字段值里可能含逗号」
  2. 要求”严格按表头分列”:明确”用第一行表头数列数,遇到逗号但不是分列符的要识别”
  3. 改用 TSV 中间格式:Excel 复制是 Tab 分隔,让 AI 按 Tab 解析更稳
  4. 要求 AI 用代码处理:让 AI 写 Python csv 模块(quoting=csv.QUOTE_ALL),原生支持引号包裹字段

记住:CSV 是个看起来简单但坑超多的格式。复杂数据建议跳过 CSV,直接 JSON ↔ Excel 互转。

进阶玩法 + 类似场景

进阶玩法 1:JSON 转 Excel 多 Sheet

源 JSON 有多个数组,想拆成多个 sheet:

{
  "customers": [...],
  "orders": [...],
  "products": [...]
}

让 AI 写 Python 脚本(pandas + openpyxl),3 个数组分别落到 3 个 sheet。

进阶玩法 2:CSV 转 GraphQL Mutation

要做数据迁移:CSV → GraphQL mutation。

mutation {
  insert_users(objects: [
    { id: 1, name: "张三", city: "北京" }
    { id: 2, name: "李四", city: "上海" }
  ]) { affected_rows }
}

让 AI 按你的 GraphQL Schema 字段名生成,500 行直接出。

进阶玩法 3:定时同步用 Apps Script

如果数据每天要从 Google Sheets 同步到 API,写一段 Google Apps Script 定时跑 CSV→JSON→POST 整个流程。

类似场景

常见问题

Q:转换后中文乱码怎么办? A:99% 是编码问题。CSV 用 UTF-8 编码(不是 GBK),JSON 永远是 UTF-8。Excel 另存为时选「CSV UTF-8」而不是「CSV (逗号分隔)」。

Q:能处理 10 万行的 CSV 吗? A:单次对话不行(上下文不够)。让 AI 写一段 Python / Node.js 脚本,本地跑 5 秒搞定。或者用 Google Apps Script 在 Sheets 里跑。

Q:JSON 嵌套 5 层以上怎么拍平? A:让 AI 用「点号路径」拍平:user.address.city 成一列、user.orders[0].amount 成一列。Python 的 pandas.json_normalize 函数就是干这个的,AI 给你代码。

Q:能保留 JSON 的字段顺序吗? A:JSON 标准上字段无序,但实际所有解析器(包括 JavaScript Object)会保持插入顺序。让 AI 在转换时按 CSV 表头顺序生成 JSON 字段,自然有序。

Q:转换敏感数据安全吗? A:不要把真实手机号、身份证、密码粘给云端 AI。3 种保护方案:1)脱敏后再转;2)只贴样本,让 AI 给脚本本地跑;3)用本地 LLM(Ollama)跑。