无法从原始资源中的文本文件中读取希伯来字母 - java

时间:2011-10-24 18:20:20

标签: android hebrew

我做了很多试验,但无法从原始资源文本文件中读取希伯来字母。 我每次尝试都会得到平方?如果我正在读英文字母,一切都还可以。 我也试过使用UTF-8,我也得到了gibirish。

这是我正在使用的代码。

InputStream inStream = getResources().openRawResource(R.raw.questutf8);

if (inStream != null)
{    
   InputStreamReader inputReader = new InputStreamReader(inStream);

   int c, i=0;
   int i=0;
   char [] cb = new char[1];
   byte [] buf = new byte[100];
   String line;

   while (inputReader.read(cb, 0, 1) > -1)
   {

      if(cb[0] == '\r' || cb[0] == '\n')
      {

          line = new String(buf, 0, i, "UTF-8");
          i=0;

    //Doing somthing with line
      }

      else
      {

          buf[i++] = (byte) cb[0];
      }

   }
}

有谁知道我该怎么办? 提前谢谢!

1 个答案:

答案 0 :(得分:0)

如果源文件是UTF-8,请尝试使用InputStreamReader(InputStream, String)构造函数传递编码并以UTF-8读取文件:

InputStreamReader inputReader = new InputStreamReader(inStream, "UTF-8");