java - 使用带有阿拉伯数字的阿拉伯字母

标签 java android locale arabic multilingual

这听起来可能很奇怪,但事实是 Android 对语言的处理非常糟糕。以阿拉伯语为例:

东部的阿拉伯人使用阿拉伯字母 (ابجدهوò) 和波斯数字 (٠١٢٣٤٥٦٧٨٩)。

西部地区的阿拉伯人使用阿拉伯字母 (ابجدهوò) 和阿拉伯数字 (0123456789)。

Android只有一种阿拉伯语,这是第一种。

我正在寻找一种方法在我的应用程序中应用第二种(使用阿拉伯字母和阿拉伯数字)

有什么办法吗?

最佳答案

尝试在默认语言环境中指定编号系统 (nu)。例如,以下语言环境将使系统显示印度数字 (٠١٢٣٤٥٦٧٨٩)

Locale AR_LOCALE_EAST_NUMBERS = new Locale.Builder().setLanguageTag("ar-u-nu-arab").build();
Locale.setDefault(AR_LOCALE_EAST_NUMBERS);

关于java - 使用带有阿拉伯数字的阿拉伯字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29624376/

相关文章:

javascript - 根据 Firefox 中的区域设置格式化 "YYYY-MM-DD"日期字符串

java - 无法创建android onListItemClick 方法

Java 安卓套接字

java - 将 JSON 字符串拆分为两个变量

android - 发布到Android市场时如何在应用程序上放置关键字或元标记

python - 为什么 Python 在语言环境模块中将德语和西类牙语(以及其他?)时间格式字符串存储为 %T?

javascript - Controller 内的 Angular Filter Service

java - 用随机颜色填充每个方 block

java - 在android项目中使用神经网络

java - 如何使用 Stream.flatmap 将被展平的对象与展平的对象组合起来