2016-12-20 16 views
1

でヒンディー語のテキストを表示しながら、私は、サーバーから取得していますヒンディー語でいくつかのテキストを表示したいです。奇妙な文字アンドロイド

いくつかの奇妙な文字が表示されるテキストを示す一方で(à¤à¥à¤¸à¥à¤à¤¿à¤à¤)。 しかし、iOSの中で、その、私はデフォルトのAndroid携帯電話によって、そのいくつかのエンコーディングの問題

答えて

1

最後に自分自身で答えを得ました 私はネットライブラリとしてvolleyを使用していますが、デフォルトではエンコードタイプはlatin-1 だからUTF-8に変更した後、それは

みんなありがとうあなたの助けのために完璧に

働い

その示す奇妙な文字
+0

は、私は、このための解決策を見つけ、なぜ –

2

は(今いくつかはサポートしています)デーヴァナーガリーフォントをサポートしていないと思う完全に

を示します。しかし、Androidアプリケーションでhindi、tamil、bangaliなどのDevanagariフォントを使用する場合は、外部フォントを使用する代わりに使用できます。

の手順に従ってください...

  1. は、あなたのアプリケーションで使用したい外部デーヴァナーガリーフォントをダウンロードしてください。 ex。 (Verdana.ttfまたはanand-lipi-bold)

  2. アセットの下に新しいフォント "fonts"を作成し、ダウンロードした.ttfフォントをアセット/フォントフォルダにコピーします。

TextViewに.ttfを読み込みます。

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"); 

希望すると、これが役立ちます。

1

私も、サーバーからいくつかのアラビア文字列を得ていたし、それはあなたのようないくつかのchaaractersを表示したが、これを使用した後に、それはここではなく、ISO-

を解決した文字列

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

を取得するためのコードの下に使用してください8859-1サーバー側でデータがエンコードされたエンコードタイプを使用できます

+1

サーバーからの文字列はUTF-8である私にクレジットを与えます:D –