创建免费账户,即可每月免费获得 10,000 字符,使用我们的AI本地化代理翻译您的内容。
无需信用卡即可开始!
我们的国际化文件翻译服务支持跨不同平台和框架使用的多种文件格式。
| 格式 | 使用方 | 支持仅翻译新字符串 | 支持注释 | 支持元数据翻译控制 |
|---|---|---|---|---|
JSON / JSONC | JavaScript, TypeScript · i18next, React, Vue, Angular | |||
XML | Android strings.xml · iOS plist · 通用XML · .NET ResX | |||
YAML / YML | Ruby on Rails · Node.js · 配置文件 | |||
ARB | Flutter · Dart | |||
PO / POT | GNU Gettext · PHP, Python, WordPress, Ruby | |||
XLIFF | 专业CAT工具 · 本地化平台 · Angular | |||
.properties | Java · Spring Boot · Android | |||
CSV / TSV | 电子表格 · 自定义本地化工作流程 | |||
MD | 文档 · README文件 · Jekyll, Hugo, Docusaurus | |||
TXT | 用于应用本地化的纯文本文件 |
翻译国际化文件是我们的服务所提供的简单直接的过程。请按照以下步骤翻译您的国际化文件,并确保项目间的一致性。
设置源语言和目标语言:
选择您的源语言(例如 en-US)。添加一种或多种目标语言(例如 fr-FR、de-DE),并配置翻译选项。
增量更新:此功能非常适合正在进行的项目。通过上传现有的目标文件,您可以确保仅翻译新增和更改的字符串,而之前翻译的内容保持不变。这不仅节省了成本,还保留了对现有翻译所做的任何手动调整。我们存储源字符串的哈希值,因此系统可以根据哈希值的存在来检测哪些字符串是新的,哪些是旧的。
重要提示:如果您启用了“仅翻译新条目”,则您上传的目标文件必须已经包含该语言之前翻译过的字符串(例如,您的法语文件应该已经包含所有旧的法语翻译)。
如果您只是上传与目标文件相同的源文件(其中不包含法语内容),则不会翻译任何内容,因为无法检测哪些字符串是新的,哪些是旧的。
注意:上传目标文件是可选的。如果您不上传任何目标文件,首次将翻译所有字符串,无论是否启用了“仅翻译新条目”。
文件命名规则:
如果上传的文件名不完全是语言代码(例如 fr.json、de.json),则其名称必须与源文件的名称匹配,以便系统知道它们包含不同语言的相同字符串。例如:
/en/common.json
/fr/common.json
/de/common.json
这可以确保翻译正确对齐。如果文件名与源文件名不同,系统会将它们视为属于不同的命名空间。在国际化中,命名空间只是用于按应用部分组织字符串的独立文件(例如:common.json 用于通用字符串,auth.json 用于登录,dashboard.json 用于仪表板)。
每个命名空间在每个语言文件夹中都应该有一个匹配的文件:
/en/common.json
/en/auth.json
/fr/common.json
/fr/auth.json
为每种语言使用相同的文件名可确保系统能够正确匹配字符串。
0196e881-fb54-7150-a292-5b1e8f70a8ae.zip)。该归档包含每种目标语言的已翻译文件,并按语言代码组织到单独的文件夹中。我们的平台通过先进的AI驱动翻译简化了您的国际化文件本地化流程,在保留文件结构和上下文的同时,提供准确高效的结果。
国际化 (i18n) 是指设计软件以便在不更改代码的情况下适应不同语言和地区的过程。本地化 (l10n) 是指为特定区域设置实际调整软件的过程——翻译字符串、调整日期格式、货币和文化参考。i18n中的“18”代表“internationalization”中“i”和“n”之间的18个字母。
国际化文件翻译是本地化工作流程的核心。开发者不再将文本硬编码在源代码中,而是将所有用户可见的字符串外部化到资源文件中——JSON、YAML、PO、XLIFF、ARB或Properties文件。这些文件成为所有翻译的唯一事实来源,并与应用程序一起进行管理、版本控制和部署。
对于全球化产品,国际化文件可能需要翻译成数十种语言。大规模管理此过程需要自动化、一致性和格式感知工具——这正是我们的AI驱动国际化文件翻译服务所提供的。
国际化文件格式的选择通常取决于您的技术栈。每种格式在结构、工具和平台支持方面都有不同的优势:
flutter gen-l10n 编译。ResourceBundle 的企业级Java应用程序使用。我们国际化文件翻译服务最强大的功能之一是 增量翻译——即仅翻译新字符串或已更改的字符串,而无需重新翻译已本地化的内容。这显著降低了活跃开发项目的翻译成本和处理时间。
要使用增量翻译,请为每种语言上传您的源文件和现有的目标文件。我们的系统会比较两个文件中存在的键,并仅翻译目标文件中缺失的字符串。这在持续开发周期中特别有价值,因为每次冲刺或发布都会添加新的字符串。
增量翻译支持的格式列在上表中。对于其他格式,上传目标文件对于词汇表上下文仍然有用,可确保翻译运行间术语的一致性。
我们的国际化文件翻译服务处理各种现代本地化场景:
ng extract-i18n 生成的XLIFF 1.2和2.0文件,用于Angular的内置国际化系统。我们支持 JSON / JSONC、XML (Android strings.xml, .NET ResX, 通用)、YAML / YML、ARB (Flutter)、PO / POT (GNU Gettext)、XLIFF 1.2和2.0、.properties (Java)、CSV / TSV、Markdown (.md) 和 纯文本 (.txt)。文件可以单独上传,也可以作为最大5 MB的ZIP归档上传。
是的。您可以在一个作业中添加多个目标语言。我们的服务会处理所有语言对,并将结果打包在按语言代码(例如 fr/, de/, ja/)组织的ZIP归档中。
为每种语言上传您的源文件和现有的目标文件(已包含您之前的翻译)。我们的系统会识别源文件中存在但目标文件中缺失的字符串,并仅翻译这些字符串——避免重新翻译您已经付费的内容,并防止覆盖手动编辑。
每个文件或ZIP归档的最大上传大小为 5 MB。对于非常大的项目,请考虑按命名空间拆分文件或上传多个作业。您可以在此页面实时监控作业进度,并在“文件”页面访问所有已完成的作业。
不同语言文件夹中名称相同的文件被视为同一个命名空间(例如 /en/common.json 和 /fr/common.json)。名称不同的文件被视为独立的命名空间。在所有语言文件夹中使用一致的文件名,以确保正确的字符串匹配。