2016-04-16 15 views
0

私はC#からjava(アンドロイド)に、ヘブライ文字を含む文字列をtcp経由で送信しようとしています。アンドロイドのヘブライ文字を表示する

ただし、javaに付随するデータは疑問符です。

ここに関連するコード:

C#(m_clientがれるtcpClientクラスです):

NetworkStream stream = client.m_client.GetStream(); 
byte[] bytes = System.Text.Encoding.ASCII.GetBytes(msg); 
stream.Write(bytes, 0, bytes.Length); 

のJava(アンドロイド):

BufferedReader input = new BufferedReader(new InputStreamReader(m_client.getInputStream(),"Windows-1255")); 
char[] buffer = new char[1024]; 
input.read(buffer); 
return new String(buffer); 

私はエンコーディングのすべての種類を試してみましたJavaの部分(Windows-1255、UTF-8、ASCII、iso-8859-8-i、iso-8859-8)は動作しません。

私のOSはWindows 7です。 ありがとうございます。

+0

試してみます。私はASCIIがヘブライ語をサポートしていないと思う –

+0

返信ありがとう、それも問題だった、アンドロイドの私の言葉はヘブライ語にする必要があり、またエンコーディングをJavaとC#の両方でUTF-8にする – Joe

+0

うんざりフィードバックに感謝します – Pomagranite

答えて

0

デバイスで設定/言語&入力に移動し、言語がヘブライ語であるか、ヘブライ語でどのように言いますかを確認してください。これは、デバイスを設定する必要がありますlocale私はそれを表示しないが、再び私はヘブライ語を知らない。 httpリクエストのヘッダーの一部は、特にAccept-Language:lain/hebrewthisです。ヘブライ語はutf-8の一部ですが、あなたは左のものがあります。このtrickは、テスト用のヘブライ語キーボードがない場合に便利です。幸運

0

これが私の仕事:C#の側で使用するUTF8エンコーディングの

BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("Windows-1255"))); 
関連する問題