TTokenySpace
返回 Skills 列表

Format Converter Free

支持CSV、JSON、XML、YAML、TOML等格式单文件互转,保留嵌套结构,自动推断类型与处理编码,适合10MB内文件。

#中文
0

安装到 Tokeny(自动)

下载 ZIP
安装"format-converter-free"技能
技能信息:
- 名称: Format Converter Free
- 标识: format-converter-free
- 描述: 支持CSV、JSON、XML、YAML、TOML等格式单文件互转,保留嵌套结构,自动推断类型与处理编码,适合10MB内文件。
- 版本: 1.0.0
下载地址:
https://www.tokeny.space/api/skills/format-converter-free/download
继续

复制上方内容到 Tokeny 客户端并在会话中发送即可自动安装;也可直接 下载 ZIP并拖动到技能窗口安装。

SKILL.md

数据格式转换 免费版

一、概述

数据格式转换免费版面向需要在不同数据格式间快速转换的开发者与数据工作者。覆盖 CSV、JSON、XML、YAML、TOML 等主流格式的互转,适合单文件、小规模的转换场景。

免费版聚焦"快速、准确、类型智能"的核心转换能力,适合 10MB 以内的文件,无需复杂配置即可上手。

核心能力

2.1 支持的格式矩阵

输入格式输出格式典型场景
CSVJSON表格数据入 API
JSONCSVAPI 数据入 Excel
JSONYAML配置文件人性化
YAMLJSON配置文件程序化
XMLJSON旧系统集成
JSONXMLSOAP/legacy 接口
TOMLJSONPython 配置入程序
JSONTOML程序配置入 Python

输入: 用户提供1 支持的格式矩阵所需的指令和必要参数。 处理: 解析1 支持的格式矩阵的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回1 支持的格式矩阵的响应数据,包含状态码、结果和日志。

2.2 嵌套结构保留

  • 支持多层嵌套对象与数组
  • 嵌套结构在 CSV 中以 . 分隔展开(如 user.address.city)
  • 数组在 CSV 中以 [item1, item2] 形式保留
  • 转换过程不丢失字段,保留原始数据完整性

输入: 用户提供2 嵌套结构保留所需的指令和必要参数。 处理: 解析2 嵌套结构保留的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回2 嵌套结构保留的响应数据,包含状态码、结果和日志。

2.3 类型智能推断

原始值推断类型说明
42int整数
3.14float浮点数
true / falsebool布尔值
null / Nonenull空值
2024-01-01str(保留原文)日期字符串
其他str字符串

输入: 用户提供3 类型智能推断所需的指令和必要参数。 处理: 解析3 类型智能推断的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回3 类型智能推断的响应数据,包含状态码、结果和日志。

2.4 编码自动处理

  • 自动检测 UTF-8 / GBK / UTF-16 / Latin-1
  • 输出统一为 UTF-8(可选其他)
  • BOM 头自动识别与处理
  • 中文内容完整保留,不会乱码

输入: 用户提供4 编码自动处理所需的指令和必要参数。 处理: 解析4 编码自动处理的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回4 编码自动处理的响应数据,包含状态码、结果和日志。

2.5 边界情况处理

  • 空文件:返回空结构,不报错
  • 超大行:单行长度无上限,但建议 <1MB
  • 特殊字符:引号、换行、制表符等正确转义
  • 重复键:JSON 中保留最后一个,转换时给出警告
  • 循环引用:JSON/XML 不允许,转换前自动检测

输入: 用户提供5 边界情况处理所需的指令和必要参数。 处理: 解析5 边界情况处理的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回5 边界情况处理的响应数据,包含状态码、结果和日志。 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:等格式互转的免费、核心能力、支持单文件快速转、数据格式转换免费、版面向需要在不同、数据格式间快速转、换的开发者与数据、工作者、等主流格式的互转、主流格式互转、单文件快速转换、输入一个文件、输出另一种格式、自动检测与转换等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。

适用场景

角色典型场景输入输出
后端开发者API 数据入 ExcelJSONCSV
运维工程师配置文件迁移YAMLTOML
数据分析师表格数据入程序CSVJSON
集成工程师旧系统适配XMLJSON
Python 开发者配置文件管理TOMLJSON

使用流程

  1. 阅读## 核心能力章节了解skill功能
  2. 按## 依赖说明配置环境
  3. 执行所需能力对应的命令
  4. 参考## 错误处理章节处理异常
  5. 查看## FAQ解答常见疑问

预计上手时间:< 60 秒

直接以自然语言向 Agent 描述转换任务,以下为可复制模板:

输入格式

参数名类型必填说明
inputstring数据格式转换(免费版)处理的输入数据或指令
optionsobject附加配置选项,如模式选择、格式偏好等
callback_urlstring异步处理完成后的回调通知URL
请把 config.yaml 转换为 toml 格式,保留所有嵌套结构与注释。
请把 users.json 转换为 csv,嵌套字段以点号展开。

Agent 会自动识别输入格式与目标格式,执行转换并输出结果。

示例

5.1 CSV ↔ JSON

输入(CSV):

name,age,city
张三,30,北京
李四,25,上海

输出(JSON):

[
  {"name": "张三", "age": 30, "city": "北京"},
  {"name": "李四", "age": 25, "city": "上海"}
]

5.2 JSON ↔ YAML

输入(JSON):

{
  "database": {
    "host": "localhost",
    "port": 5432,
    "name": "myapp"
  },
  "debug": true
}

输出(YAML):

database:
  host: localhost
  port: 5432
  name: myapp
debug: true

5.3 XML ↔ JSON

输入(XML):

<users>
  <user id="1">
    <name>张三</name>
    <age>30</age>
  </user>
</users>

输出(JSON):

{
  "users": {
    "user": {
      "@id": "1",
      "name": "张三",
      "age": 30
    }
  }
}

5.4 TOML ↔ JSON

输入(TOML):

[database]
host = "localhost"
port = 5432
# ...
[servers.alpha]
ip = "10.0.0.1"

输出(JSON):

{
  "database": {
    "host": "localhost",
    "port": 5432
  },
  "servers": {
    "alpha": {
      "ip": "10.0.0.1"
    }
  }
}

5.5 Python 代码示例

import csv, json, yaml, xmltodict, tomllib, tomli_w
# ...
# CSV → JSON
with open('data.csv', 'r', encoding='utf-8') as f:
    rows = list(csv.DictReader(f))
with open('data.json', 'w', encoding='utf-8') as f:
    json.dump(rows, f, ensure_ascii=False, indent=2)
# ...
# JSON → YAML
with open('data.json', 'r', encoding='utf-8') as f:
    data = json.load(f)
with open('data.yaml', 'w', encoding='utf-8') as f:
    yaml.dump(data, f, allow_unicode=True, default_flow_style=False)
# ...
# YAML → TOML
with open('config.yaml', 'r', encoding='utf-8') as f:
    data = yaml.safe_load(f)
with open('config.toml', 'wb') as f:
    tomli_w.dump(data, f)
# ...
# XML → JSON
with open('data.xml', 'r', encoding='utf-8') as f:
    data = xmltodict.parse(f.read())
with open('data.json', 'w', encoding='utf-8') as f:
    json.dump(data, f, ensure_ascii=False, indent=2)

六、最佳实践

  • 备份原文件:转换前保留原始文件,便于回退
  • 校验输出:转换后用 diff 或工具校验数据完整性
  • 嵌套适度:CSV 不适合过深的嵌套结构,建议 ≤3 层
  • 编码统一:输入输出统一 UTF-8,避免乱码
  • 特殊字符:CSV 中含逗号/引号/换行的字段必须用引号包裹
  • 类型显式:JSON 中数字与字符串需明确区分
  • 注释处理:YAML/TOML 注释在转换为 JSON 时会丢失(JSON 不支持注释)

常见问题

Q1: 转换后中文乱码怎么办?

A: 检查输入文件编码与输出编码是否一致。免费版默认 UTF-8,如需其他编码请在指令中说明,如"输出 GBK 编码"。

Q2: CSV 嵌套字段如何处理?

A: 免费版自动以 . 分隔展开嵌套字段,如 user.address.city。数组以 [item1, item2] 形式保留。

Q3: 转换后字段顺序变了?

A: JSON 对象字段无序,但免费版会尽量保留原始顺序。YAML/TOML 转换可能因库实现略有差异。

Q4: 大文件能否处理?

A: 免费版推荐处理 10MB 以内文件。更大文件建议使用专业版的流式转换与批处理能力。

Q5: 注释会保留吗?

A: YAML/TOML 中的注释在转换为 JSON 时会丢失(JSON 不支持注释)。YAML ↔ TOML 互转时注释尽量保留。

已知限制

本免费体验版限制以下高级功能:

  • 禁用批量文件转换(单次仅处理 1 个文件)
  • 禁用流式转换(文件大小上限 10MB)
  • 禁用自定义字段映射与重命名
  • 禁用转换模板保存与复用
  • 禁用定时转换任务
  • 禁用与外部数据库(如 PostgreSQL)的导入导出
  • 禁用转换历史与审计日志

解锁全部功能请使用专业版:format-converter-pro

  • 当前为免费版本,如需完整功能请升级到付费版获取全部能力

依赖说明

运行环境

  • Agent 平台: 任意支持 SKILL.md 的 AI Agent(Claude Code / Cursor / Codex / Gemini CLI 等)
  • 操作系统: Windows / macOS / Linux
  • Python: 3.11+(tomllib 内置)

第三方依赖

依赖项类型是否必需获取方式
LLM APIAPI必需由 Agent 内置 LLM 提供
pyyamlPython 库必需pip install pyyaml(YAML)
xmltodictPython 库必需pip install xmltodict(XML)
tomli_wPython 库必需pip install tomli_w(TOML 写入)
tomllibPython 库必需Python 3.11+ 内置(TOML 读取)
chardetPython 库可选pip install chardet(编码检测)

API Key 配置

  • 本 Skill 基于自然语言指令,无需额外 API Key
  • 如对接外部存储,需用户自行提供访问凭证,通过环境变量传入,禁止在对话或脚本中明文硬编码

可用性分类

  • 分类: MD+EXEC(纯 Markdown 指令,核心功能需要 exec 命令行执行能力)
  • 说明: 基于自然语言驱动的 AI Skill,通过类型智能与编码自动处理保障转换质量

错误处理

错误场景原因处理方式
配置错误参数缺失或格式错误检查依赖说明中的配置要求
运行时错误运行环境不满足确认运行环境符合依赖说明
网络错误连接超时或不可达执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案

评论

加载中…