有没有工具可以将Android的XML本地化文件转换为iPhone的.strings文件?

12

我想标题已经很清楚了。


您可以使用新工具 attranslate 来解决此任务:https://github.com/fkirc/attranslate 除了转换文件格式外,attranslate 还能够更改语言。 - Mike76
5个回答

9

我也在看这个。如果你只需要完成一些重活,而且你已经在使用OsX,你可以使用xsltproc和这个简单的xsl来帮助你启动。

xsl:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="string">
"<xsl:value-of select="@name"/>"= "<xsl:apply-templates/>"; </xsl:template>
<xsl:template match="resources">
<xsl:apply-templates select="string"/> </xsl:template>
</xsl:stylesheet>   

将此保存到一个文件中,例如transform.xsl,然后从shell运行以下命令:
xsltproc transform.xsl your_android_strings.xml > fileforxcode.out
这似乎生成了正确的内容,尽管您可能需要单独处理任何格式字符串。无论如何,它都可以节省一些工作。

感谢提供最快速的解决方案! - Modo Ltunzher

4
你可以使用最新版本的TM数据库工具,从Android .xml文件中提取本地化信息,然后添加到iPhone .string文件中。操作很简单:
  1. 启动工具
  2. 打开源和目标Android xml文件,并将本地化信息导入到TM中
  3. 打开.string文件并使用TM进行翻译
  4. 保存.string文件
请查看此处以获取详细说明。

2
优秀的工具。对于需要的人来说,现代答案是https://localise.biz/free/converter/ios-to-android。 - Pbrain19
1
你可以使用我创建的这个链接:https://jsfiddle.net/danielgindi/x9njj9gj/ - daniel.gindi
一个更现代的答案是 attranslate: https://github.com/fkirc/attranslate - Mike76

2
我使用一个脚本这里。它将已经翻译的Android本地化字符串文件转换成iOS Localizable.strings文件,并考虑字符串占位符的转换(%1$s变成%1$@)。这是一个简短的Ruby脚本,易于理解。在构建过程的开始处将其链接到Xcode作为运行脚本即可。

0

如果您不想预处理字符串,只需将Android strings.xml文件放入iPhone项目中,您还可以选择this选项。


-1

这并不完全回答了你的问题,但是对于你未来的iOS+Android项目,你可以考虑使用DMLocalizedString。目前该源代码仅适用于iOS,但我相信制作Android版本非常容易。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接