JSON、XML和YAML翻译工具
翻译大型JSON、XML或YAML文件:仅翻译内容,保留键名
上传JSON、XML、.resx或YAML文件——无论是CMS导出文件、商品信息流还是Rails的en.yml——即可获得保留原有结构、仅翻译文本内容的新文件。键名、元素和属性名称绝不变更;id、url、slug、sku和status等标识符字段保持原样;所有占位符均经严格校验。单次付费$5即可翻译多达50,000个值;无需注册,前段免费体验。
交付内容
您将收到格式有效且完全一致的文件。若该格式有命名规范,将自动根据目标语言重命名:en.json变为de.json,en.yml变为de.yml,Strings.resx变为Strings.de.resx。付款前,前段翻译结果会与原文并排显示在屏幕上。
- JSON:保留原始键名、嵌套层级、键名顺序与缩进。数字、布尔值和null保持原样,仅翻译包含可读文本的字符串值。
- XML与.resx:翻译元素内的文本以及title、alt、label、placeholder等可读属性。保留元素名称、其他属性、注释和CDATA区块;自动跳过script、style、code和pre,以及任何标记为translate="no"的内容。
- YAML:仅翻译值,保留注释、引号风格、文本块格式与锚点。根节点为en:的Rails文件转换后根节点自动变为de:。
- 若有占位符或标签重试两次仍无法保留,将生成警告列表;对应的值会保留原文,确保文件绝对不会损坏。
使用AI聊天机器人与使用本工具翻译结构化文件的对比
AI聊天机器人处理30行左右的JSON片段很轻松。但大型文件需要完整、有效输出,且成千上万个键名必须各就其位,此时长文本回复往往会中途崩溃。
| 处理场景 | AI聊天机器人 | 本工具 |
|---|---|---|
| 30行的JSON片段 | 通常能正确翻译 | 同样轻松翻译 |
| 3 MB的JSON导出文件 | 无法单次完整返回;输出中途截断且无法解析 | 分块翻译每个值,并在原文件结构上完整重建 |
| "status": "有效", "type": "产品" | 直接翻译,导致下游读取该文件的程序报错崩溃 | 自动识别并保留标识符键名与特定值 |
| 键名与元素名称 | 有时会误将其翻译 | 绝不发送键名与元素名进行翻译 |
| 像{count}这样的占位符 | 通常能保留,但没有任何校验机制 | 逐一校验每个值;若损坏则重试,仍异常则保留原文 |
| YAML中的注释与排版格式 | 重新生成文件时往往全部丢失 | 完美保留,仅替换值的内容 |
如何翻译JSON、XML或YAML文件
-
1
上传文件
拖入最多20个.json、.xml、.resx、.yml、.yaml或.xliff文件并选择目标语言。若数据中有专属代码字段,可添加需要跳过的键名列表。
-
2
免费查看前段效果
前段翻译结果将与原文及其键路径并排显示。您可以直接编辑任何译文。无需注册。
-
3
解锁并下载
支付$5解锁完整任务并下载翻译后的文件,多文件时打包为ZIP下载。
通用AI助手为何在大型结构化文件上频频出错
在对话框中翻译JSON或XML,本质上是让大模型重写整个文件,包含每一个括号、键名和引号。大型文件超出了单次回复的长度限制,导致输出中途截断,生成的代码无法解析。而且模型一视同仁地看待键和值,极易“过度翻译”,误翻枚举值、slug或键名。
本工具会直接解析文件本身,仅将可读的文本值分块发送,并附带其键路径作为上下文。键名、元素名和属性名绝不会被发送。标识符键名(id、url、slug、sku、type、status、code、email等)下的值,以及格式形如order_shipped或user.profile.title的标识符均会保留原样。系统会校验译文中的每个占位符和标签,并基于您的原文件重建,确保其他一切字节级精准无误。
常见翻译场景
- JSON或XML格式的CMS与帮助中心导出文件
- Rails、Symfony和Hugo的YAML文件
- .NET的.resx资源文件
- XML或JSON格式的商品信息流(Product Feed)与商品目录
- 非标准i18n格式的游戏与应用内容数据文件
- 仅部分字段为文本(如标题和描述)的数据文件
该选哪个工具
对于每个值都需要翻译的应用多语言字符文件(i18next JSON、ARB、PO、Android strings.xml、iOS .strings和.xcstrings),请使用“本地化文件翻译”工具:它还支持复数形式处理。如果文件属于数据与内容文件,文本与ID、链接、代码混杂在一起,请使用本工具。在此处上传的Android strings.xml和XLIFF文件处理方式与该工具完全一致。
单个任务最多支持20个文件,单个文件最大50 MB。一次付费最多可覆盖50,000个值和3,000,000个字符;无限版最多可处理200,000个值。超出限制的值将保留原文,付费前界面会明确提示未翻译的数量。YAML流式语法([a, b])、别名以及未加块标记的跨行文本值将保持原样不作翻译。
按语言和场景
翻译大型 JSON 文件
无论是什么结构的 JSON 文件,从 CMS 导出数据到完整内容转储均可上传;返回的文件保持原有键名、嵌套层级、键名顺序...
阅读更多 →翻译 XML 文件或商品 Feed
上传 XML 文件(例如商品 Feed、内容导出包或含展示文本的配置文件),即可获取元素内文本已翻译的对应文件。元素名、...
阅读更多 →翻译 YAML 文件或 Rails en.yml
上传 Rails en.yml、Symfony messages 或 Hugo 数据文件等 YAML 文件,导出的文件中仅值被翻译,其余部分原样保留:注...
阅读更多 →翻译 .NET .resx 资源文件
上传一个或多个 .resx 文件,工具会为每个文件生成新语言的附属资源文件(如 Strings.de.resx),并翻译其中的每个字...
阅读更多 →价格说明
小文件,前段内容
免费
不超过300个值的任务完全免费,含文件下载。较大任务:无需注册,前段内容直接在屏幕上免费查看。
完整任务
$5
一次付费:跨最多20个文件,最多处理50,000个值与3,000,000个字符。无需订阅。
无限版
$19 / 周
畅享本站所有工具,单任务支持多达200,000个值。
常见问题
ChatGPT能翻译大型JSON文件吗?
小文件可以。但大文件由于必须在单次回复中返回,输出往往会中途截断导致格式损坏,甚至键名或代码也会被误翻。本工具仅提取文本值进行翻译,逐一校验,并严格基于您的原始文件结构重新生成。
键名(Keys)会被翻译吗?
不会。键名、元素名和属性名绝不会被送去翻译。系统仅翻译可读的文本值,且会自动跳过诸如 id、url、slug、sku、type 和 status 等标识符字段下的值。
我可以自定义跳过某些字段吗?
可以。只需输入要跳过的键名并用逗号隔开,例如 sku, internal_note 或 *_code,它们就会被添加到内置的跳过列表中。
翻译时会保留变量占位符吗?
会。每处翻译都会严格检查 {name}、{{count}}、%{count}、${price} 等占位符以及值内部包含的 HTML 标签;如果翻译后丢失了占位符,系统会重新翻译,若仍不匹配则保留原文。
单次付费最多支持翻译多少个字段?
单次只需 $5,最多支持在 20 个文件中翻译 50,000 个值和 3,000,000 个字符。无限版最高支持 200,000 个值。
支持翻译成哪些语言?
支持 81 种语言,包括西班牙语、法语、德语、葡萄牙语、意大利语、荷兰语、波兰语、日语、韩语、中文、阿拉伯语和希伯来语等。
这项服务免费吗?
包含不超过 300 个值的任务完全免费。对于更大的任务,无需注册即可直接在屏幕上免费查看前段翻译结果。解锁完整任务只需一次付费 $5。
我的文件安全私密吗?
只有您自己可以查看您的任务。文本值仅出于翻译目的发送给 AI 模型服务商,且传输通道已确保不会将您的数据用于模型训练。无需注册上传的任务会在 7 天后自动删除,您也可以随时手动删除任何任务。
更新于 2026年10月25日 · APPFACT STUDIO LTD