我想在视图上显示波斯语(波斯语)数字。例如,我计算了一个日期并将其转换为Jalali日历,但如何通过波斯数字显示它呢?
发布于 2015-07-28 18:00:56
通过使用Typeface类,视图的字体类型可以更改为波斯语字体,因此数字可以用波斯语字体显示:
Typeface typeface = Typeface.createFromAsset(getAssets(), "FarsiFontName.ttf");
myView.setTypeface(typeface);
发布于 2015-08-26 18:18:15
用波斯字体显示数字的另一种方法是使用下面的Helper类:
public class FormatHelper {
private static String[] persianNumbers = new String[]{ "۰", "۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹" };
public static String toPersianNumber(String text) {
if (text.length() == 0) {
return "";
}
String out = "";
int length = text.length();
for (int i = 0; i < length; i++) {
char c = text.charAt(i);
if ('0' <= c && c <= '9') {
int number = Integer.parseInt(String.valueOf(c));
out += persianNumbers[number];
}
else if (c == '٫') {
out += '،';
}
else {
out += c;
}
return out;
}
}
将此类另存为UTF8格式,并像下面的代码一样使用它
FormatHelper.toPersianNumber(numberString);
发布于 2016-06-18 16:11:16
将区域设置设置为阿拉伯语、埃及
int i = 25;
NumberFormat nf = NumberFormat.getInstance(new Locale("ar","EG"));
nf.format(i);
https://stackoverflow.com/questions/31558685
复制相似问题