【问题标题】:Display Hebrew Characters in android在android中显示希伯来语字符
【发布时间】:2016-04-16 19:40:52
【问题描述】:

我正在尝试通过 tcp 从 c# 向 java(android) 发送一个包含希伯来语字符的字符串。

但是,到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),但似乎没有任何效果

我的操作系统是 windows 7 提前谢谢大家。

【问题讨论】:

  • 在 C# 端尝试使用 utf8 编码。我认为 ASCII 不支持希伯来语
  • 谢谢您的回复,也是问题所在,我在android中的语言需要是希伯来语,并且还要将java和c#编码为UTF-8
  • 很高兴听到它的工作,并感谢您的反馈

标签: java c# android encoding hebrew


【解决方案1】:

这对我有用:

BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("Windows-1255")));

【讨论】:

    【解决方案2】:

    在设备上转到设置/语言和输入并确保语言是希伯来语或希伯来语中的希伯来语怎么说。这应该设置设备locale 我没有列出它,但我又不知道希伯来语。 http请求中的部分标头特别是Accept-Language:lain/hebrewthis希伯来语是utf-8的一部分,但你确实有从右到左的东西。如果您没有用于测试的希伯来语键盘,此trick 可能会很有用。祝你好运

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-28
      相关资源
      最近更新 更多