首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在视图中显示波斯语(波斯语)数字

如何在视图中显示波斯语(波斯语)数字
EN

Stack Overflow用户
提问于 2015-07-22 17:06:42
回答 11查看 10.4K关注 0票数 31

我想在视图上显示波斯语(波斯语)数字。例如,我计算了一个日期并将其转换为Jalali日历,但如何通过波斯数字显示它呢?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2015-07-28 18:00:56

通过使用Typeface类,视图的字体类型可以更改为波斯语字体,因此数字可以用波斯语字体显示:

代码语言:javascript
复制
Typeface typeface = Typeface.createFromAsset(getAssets(), "FarsiFontName.ttf");
myView.setTypeface(typeface);
票数 14
EN

Stack Overflow用户

发布于 2015-08-26 18:18:15

用波斯字体显示数字的另一种方法是使用下面的Helper类:

代码语言:javascript
复制
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格式,并像下面的代码一样使用它

代码语言:javascript
复制
FormatHelper.toPersianNumber(numberString);
票数 24
EN

Stack Overflow用户

发布于 2016-06-18 16:11:16

将区域设置设置为阿拉伯语、埃及

代码语言:javascript
复制
int i = 25;
NumberFormat nf = NumberFormat.getInstance(new Locale("ar","EG"));
nf.format(i);
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31558685

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档