Странные символы при отображении текста на хинди в Android

Я хочу отобразить текст на хинди, который я получаю с сервера.

При отображении текста отображаются некоторые странные символы (à¤à¥à¤¸à¥à¤à¤¿à¤à¤). Но в iOS его показ отлично

Я думаю, что это проблема кодирования

3 ответа

Решение

Наконец-то получил ответ сам. Я использую залп в качестве сетевой библиотеки, и по умолчанию его кодировка была в латинице-1. Так что после перехода на utf-8 он работал отлично

Спасибо всем за вашу помощь

По умолчанию телефон Android (теперь некоторые поддерживают) не поддерживает шрифты Devanagari. Однако, если вы хотите использовать шрифты хинди, тамильский, бангальский или другие шрифты Devanagari в своем приложении для Android, у вас есть альтернатива использованию внешних шрифтов.

Следуй этим шагам...

  1. Загрузите внешний шрифт Devanagari, который вы хотели бы использовать в своем приложении. ех. (Verdana.ttf или anand-lipi-bold)

  2. Создайте в папке assets новую папку "шрифты" и скопируйте загруженный шрифт.ttf в папку assets/font.

затем загрузите.ttf в ваш TextView.

TextView tv = (TextView) findViewById(R.id.textView);
    Typeface fontHindi = Typeface.createFromAsset(getAssets(),
            "fonts/Ananda Lipi Bold Cn Bt.ttf");
    tv.setTypeface(fontHindi);
    tv.setText("Hindi font");

Надеюсь, что это поможет вам.

Пожалуйста, используйте ниже код для получения строки

new String("Your String".getBytes("ISO-8859-1"), "utf-8")

Я также получал некоторую арабскую строку с сервера, и он отображал некоторые символы, подобные вашему, но после использования это решило

Здесь вместо ISO-8859-1 вы можете использовать тип кодирования, в котором данные кодируются на стороне сервера.

Другие вопросы по тегам