从我看到的Android Locale class没有提及有关脚本的任何内容,只提及语言,国家和变体。
Java SE Locale class提及语言,国家/地区,脚本,变体和扩展程序,当然还有方法getScript()来获取脚本。
所以,我的问题是:如何从Android上的Locale对象获取脚本?
还是有另一种获取脚本的方法吗?
我需要这个能够区分繁体中文(zho-Hant)和简体中文(zho-Hans),因为我需要能够从Locale获取脚本,例如:汉语或汉语的语言zho
script =
ISO 15924 alpha-4脚本代码。您可以找到有效的完整列表 IANA语言子标签注册表中的脚本代码(搜索“类型: 脚本“)。脚本字段不区分大小写,但始终是区域设置 标准化为标题案例(第一个字母是大写字母和 其余的字母是小写的)。 格式良好的脚本值的格式为[a-zA-Z] {4} 示例:“Latn”(拉丁语),“Cyrl”(西里尔语)
答案 0 :(得分:4)
此功能未内置于 Android SDK 中。相反,我写了一个你可以使用的版本here。基本上,它采用上面答案中的表并将其移植到包含有用信息的Map<String, Map<String, String>>
,然后使用简单的查找方法。要在项目中使用此类,只需调用:
String script = LocaleUtilities.getScript(Locale.getDefault());
获取默认语言环境的脚本。