Dan*_*Lew 5 java android localization
假设我有一个句子,我根据从别人传入的数据动态形成.让我们说这是一个食品清单,如:["apples", "pears", "oranges"]或["bread", "meat"].我想把这些句子写成句子:"我喜欢吃苹果,梨和橘子"和"我喜欢吃面包和肉."
对于英语来说这很容易做到这一点,但是我很确定连词在所有语言中的工作方式都不一样(实际上我打赌它们中的一些是完全不同的).如何使用动态数量的项目本地化句子,以某种方式加入?
如果它有帮助,我正在为Android工作,所以你将能够使用它提供的任何库(或者一个用于Java的库).
当然,问题在于了解其他语言。如果没有找到目标语言的母语人士,我不知道如何准确地做到这一点。谷歌翻译是一种选择,但你仍然应该让会说该语言的人校对它。
Android 在复数字符串资源中具有此内置功能。他们的文档提供了英语 ( res/valules/strings.xml) 和另一种语言 ( 位于res/values-pl/strings.xml)的示例
有效数量:{zero, one, two, few, many, other}
他们的例子:
Run Code Online (Sandbox Code Playgroud)<?xml version="1.0" encoding="utf-8"?> <resources> <plurals name="numberOfSongsAvailable"> <item quantity="one">One song found.</item> <item quantity="other">%d songs found.</item> </plurals> </resources>
因此,他们的方法似乎是使用更长的句子片段,而不仅仅是单个单词和复数形式。