如何不比较英文字符(希伯来语)

时间:2020-01-04 01:49:00

标签: android character-encoding string-comparison hebrew

我试图比较两个希伯来语字符串:

 for (String key : CsvReader.all_streets.keySet()){
      if(key.equals("אורנית"))
      {
           Log.w("Strings are", "equal");
      }
 }

,但失败了。我认为这与希伯来语的编码有关,因此我尝试使用相同的编码(UTF-8)进行比较,例如:

for (String key : CsvReader.all_streets.keySet()){
     ByteBuffer key_encoded = StandardCharsets.UTF_8.encode(key);
     ByteBuffer oranit = StandardCharsets.UTF_8.encode("אורנית");

     if(key_encoded.equals(oranit))
     {
          Log.w("Strings are", "equal");
     }
}

,它也不起作用。为了确保字符串在集合中,我使用以下命令打印了HashMap:

Log.wtf("Key is", key);

enter image description here

我从实时数据库(firebase)中读取了集合all_streets。 我在互联网上搜索了答案,但找不到任何相关内容(Java字符串被编码为UTF-16)。 我如何比较这两个字符串?

0 个答案:

没有答案
相关问题