JSON 转换为 Android strings.xml 的转换器

立即将 JSON i18n 文件转换为 Android strings.xml 格式。免费,无需注册。

你也想翻译吗?

将您的文件转换,然后使用 AI 将其翻译成 29 种语言。占位符如 %1$s 保持不变。

翻译成 29 种语言

如何将 JSON 转换为 Android strings.xml

1. 插入 JSON 或上传

将您的 i18n JSON 文件的内容粘贴到输入框。转换器支持扁平和嵌套的 JSON 结构。

2. 点击转换

转换器将带点表示法的嵌套键展平(例如 settings.title),并用 <string> 标签包裹值。数组将变为 <string-array> 元素。

3. 复制输出或下载结果

将生成的 strings.xml 复制到剪贴板,或直接下载。将其放入 Android 项目中的 res/values/ 目录。

JSON Input

{
  "app_name": "My App",
  "welcome": "Hello, %1$s!",
  "settings": {
    "title": "Settings"
  }
}

strings.xml Output

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">My App</string>
    <string name="welcome">Hello, %1$s!</string>
    <string name="settings.title">Settings</string>
</resources>

JSON 与 strings.xml — 格式差异

特性JSONstrings.xml
简单字符串{"key": "值"}<string name=\"key\">值</string>
嵌套键{"group": {"key": "值"}}<string name=\"group.key\">值</string>
数组{"colors": ["红", "蓝"]}<string-array name=\"colors\"><item>...</item></string-array>
占位符converter.diffPlaceholdersJson%d 或 %1$s
特殊字符在 JSON 中转义XML 实体 (&amp; &lt; &gt;)
复数"one" / "other" 键<plurals name=\"...\"><item quantity=\"one\">...</item></plurals>

常见转换错误

嵌套键

Android strings.xml 不支持嵌套。转换器将使用点记法将键展平: {"settings": {"title": "..."}} 将变为 name=\"settings.title\"。请确保你的 Android 代码能够读取这些展平的键。

复数

JSON 的复数键,如 \"one\", \"other\" 不会自动转换为 Android <plurals>。要获得完整的复数支持,请在转换后手动用 <plurals quantity=\"...\"> 将它们包起来。

特殊字符

字符串中的单引号需要转义(\\')。转换器会自动处理。请检查输出中的引号和符号 &。

占位符格式

converter.pitfallPlaceholderDesc