Определенный арабский текст отображается неправильно, в то время как другой арабский текст отображается нормально?

Я разрабатываю приложение с арабским текстом в нем.. Мой телефон поддерживает арабский язык, поэтому текст отображается правильно... странная проблема заключается в следующем: если я скопирую нужный арабский текст из файла.txt и помещу его в EditText, EditText отображает странные символы, но если я пишу тот же текст вручную (не копировать-вставить), текст отображается нормально!
Вот картинка, показывающая, что я имею в виду: первый EditText - это текст, который я написал вручную, а второй - текст, который я скопировал из файла.txt.

Вот код приложения:

XML-файл:

  <?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" android:orientation="vertical">
    <EditText android:text="EditText" android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content"></EditText>
    <EditText android:text="EditText" android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content"></EditText>
</LinearLayout>

Я надеюсь, вы понимаете, о чем я, так как нелегко объяснить эту странную (глупую) проблему. Благодарю.

1 ответ

Решение

Если вы выровняете setText вверх, второй будет длиннее первого, что означает, что он почти наверняка содержит символы, которые выглядят как пробелы, но на самом деле являются чем-то другим; попробуйте UTF-8, кодирующий строку и сравнивающий их блок за блоком.

Другие вопросы по тегам