2012-01-22 1 views
0

Я написал этот код:андроид строка равна возвращает ложь, но они равны

Log.d("DE", p1.pId); 

и я знаю, что p1.pId является "123" (это строка и все)

тогда я:

if (p1.pId.equals("123")) 

, и это всегда неверно.

Подсказка для отладки Eclipse ТОЧНО ОЧЕНЬ.

Я заметил, что через Log.d, хотя я не вижу 123, но 123 с 1 slashed как-то (как особый символ). Я пробовал копировать в Notepad ++ только для получения ??123, когда я вставляю в блокнот, я получаю меньше текста.

Вместо 123 Я получаю (возможно) ff fe ff fe ff fe 31 в гексагоне.

Пожалуйста, проверьте эту картину: http://img821.imageshack.us/img821/8616/foox.png

ответ

1

Ваша строка имеет Unicode метки порядка байтов в начале. Их нужно снять. Если вы покажете код, где находится p1.pId, возможно, мы сможем объяснить, как это можно исправить.

 Смежные вопросы

  • Нет связанных вопросов^_^