JSON 和数组转 CSV
JSON 和数组转 CSV 用于将 JSON 数组或二维数组转换为 CSV 格式文件,生成的文件会上传至云存储,并返回访问地址。它常用于数据导出、报表生成、系统间数据迁移等场景。
指令标识:CSVExporter
指令类型:数据处理指令
指令描述:将 JSON 数组或二维数组转换为 CSV 文件并上传至云存储
先选使用方式
Section titled “先选使用方式”工作流支持「可视化编排」和「代码编排」两种创建方式。JSON 和数组转 CSV 的核心是「输入数据」与「处理方式」,主要通过可视化编排配置。
| 方式 | 怎么用 | 适合人群 |
|---|---|---|
| 可视化编排(推荐) | 拖入「JSON 和数组转 CSV」节点,填写输入数据并选择处理方式 | 大多数用户,零代码,适合快速搭建 |
| 代码编排(执行指令 XML) | 通过 执行指令 节点动态传入参数调用 | 需要动态生成或批量复用流程的用户 |
什么时候用?
Section titled “什么时候用?”- 数据导出与备份:将结构化数据导出为 CSV,便于归档备份。
- 报表生成:将查询结果或统计数据转换为表格格式。
- 数据迁移与系统集成:在不同系统间进行数据格式转换。
- 数据分析工具对接:为 BI、可视化平台提供标准化 CSV 输入。
- 输入数据是有效的 JSON 数组或二维数组格式。
- 明确处理方式:
JSON_STRING(JSON 字符串)或ARRAY(二维数组)。 - 明确是否需要表头(
includeHeader)。 - 规划好输出变量名(保存的是文件访问地址,而非文件内容本身)。
可视化编排:从 0 到跑通
Section titled “可视化编排:从 0 到跑通”下面用一个常见场景演示:把一组 JSON 数据转成带表头的 CSV 文件。按 4 步即可跑起来:
- 在工作流画布中添加 JSON 和数组转 CSV 指令。
- 在 输入数据 中填写 JSON 数组,例如:
[{"姓名":"张三","城市":"苏州","userid":"10000"},{"姓名":"李四","城市":"北京","userid":"10001"}]- 选择 处理方式 为
JSON_STRING,并按需开启「包含表头」。 - 在 将结果保存至 填写输出变量名(如
output),运行后即可拿到 CSV 文件的访问地址。
运行后输出结果示例(生成的 CSV 内容):
姓名,城市,userid张三,苏州,10000李四,北京,10001返回的访问地址示例:
https://example.com/assets/bucket-name/csv-files/user-data-20260601-123456.csv| 界面名称 | 代码属性名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|---|
| 输入数据 | input_Str | String | 是 | - | 需要转换的 JSON 数组或二维数组数据,支持复杂嵌套结构。 |
| 处理方式 | type | Enum | 是 | JSON_STRING | 数据处理方式:JSON_STRING(JSON 字符串)、ARRAY(二维数组)。 |
| 是否包含表头 | includeHeader | Boolean | 否 | true | 生成的 CSV 是否包含表头行。 |
| 是否发送消息 | sendMsgFlag | Boolean | 否 | false | 转换完成后是否发送通知消息。 |
| 界面名称 | 代码属性名 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| 将结果保存至 | outKey | String | 是 | 保存生成的 CSV 文件的云存储访问地址(不是文件内容本身)。 |
- 节点运行状态为成功。
- 输出变量中保存了可访问的 CSV 文件地址。
- 下载该文件后,内容与输入数据一致、列顺序符合预期。
| 现象 / 报错原文 | 可能原因 | 处理建议 |
|---|---|---|
| 报数据格式错误 | 输入不是有效的 JSON 数组或二维数组 | 校验数据结构与处理方式是否匹配 |
| 列顺序不符合预期 | 列顺序基于首个对象的键顺序 | 保证首个对象的字段顺序与预期一致 |
| 表头缺失或多余 | includeHeader 配置不当 | 按需开启/关闭「包含表头」 |
| 拿到的是地址而非内容 | 输出保存的是文件访问地址 | 如需内容,再用读取/下载类节点处理该地址 |
Python 代码编排
Section titled “Python 代码编排”该节点主要通过可视化编排使用。如需在流程中动态编排,可使用 执行指令(XML)节点传入参数调用,无需手写 Python 方法。
该节点推荐在可视化画布中直接配置输入数据与处理方式。若需要在流程中动态拼接数据、批量复用,可以通过 执行指令 节点,按「输入数据(input_Str)/ 处理方式(type)/ 是否包含表头(includeHeader)/ 输出变量(outKey)」的对应关系传参调用。
Q1:输入数据需要满足什么条件?
Section titled “Q1:输入数据需要满足什么条件?”A: 输入数据必须是有效的 JSON 数组或二维数组格式,建议提前校验数据结构的完整性和正确性。
Q2:输出变量保存的是文件还是地址?
Section titled “Q2:输出变量保存的是文件还是地址?”A: 生成的 CSV 会自动上传至云存储,输出变量保存的是文件访问地址,不是文件内容本身。
Q3:列顺序如何确定?
Section titled “Q3:列顺序如何确定?”A: CSV 列顺序基于 JSON 数组中第一个对象的键顺序,建议保证首个对象的字段顺序与预期一致。