У меня проблема с сравнением строк, в то время как некоторые слова возвращают корректный результат других просто нет ..сравнение строк не работает правильно
for (int s = 0; s < subjects.getLength(); s++) {
Element subject = (Element) subjects.item(s);
String sub = subject
.getElementsByTagName("name").item(0)
.getTextContent();
Log.d("Subject", getSubject() + "!A");
Log.d("Subject", sub + "!B");
Log.d("Subject", "equalsIC: " + String.valueOf(getSubject().equalsIgnoreCase(sub)));
Log.d("Subject", "Contains: " + String.valueOf(getSubject().contains(sub)));
Log.d("Subject", "Equals: " + String.valueOf(getSubject().equals(sub)));
Log.d("Subject", "ContentEqu: " + String.valueOf(getSubject().contentEquals(sub)));
Log.d("Subject", "Length A: " + String.valueOf(getSubject().length()) + "; Length B: " + String.valueOf(sub.length()));
if (getSubject().equalsIgnoreCase(subject
.getElementsByTagName("name").item(0)
.getTextContent())) {
Log.d("Subject", getSubject() + "Success !C");
Метод getSubject возвращает строку. Хотя это работает идеально подходит для "BK G3":
D/Subject﹕ BK G3!A
D/Subject﹕ BK G3!B
D/Subject﹕ equalsIC: true
D/Subject﹕ Contains: true
D/Subject﹕ Equals: true
D/Subject﹕ ContentEqu: true
D/Subject﹕ Length A: 5; Length B: 5
D/Subject﹕ BK G3Success !C
Он просто терпит неудачу с "D" G4:
D/Subject﹕ D G4!A
D/Subject﹕ D G4!B
D/Subject﹕ equalsIC: false
D/Subject﹕ Contains: false
D/Subject﹕ Equals: false
D/Subject﹕ ContentEqu: false
D/Subject﹕ Length A: 5; Length B: 5
Я попытался его с sub.trim(), но ничего не изменилось ..
Заранее спасибо.
Редактировать
Debugging дает мне следующую информацию:
sub = ([email protected])"D G4"
value = {char[5]@830092913560}
hashCode = 0
offset = 0
count = 5
((Activity_Add)this).subject = [email protected])"D G4"
value = {char[59]@830080636976}
hashCode = 0
offset = 6
count = 5
Вы пытались отлаживать каждую строку, чтобы увидеть байт по содержимому байта? –
От того, что я вижу, они на самом деле разные. Глядя на html из вашего сообщения, я вижу, что первая строка - 'D G4', а вторая -' D G4'. –
Что это за 59 символов, которые есть у второй строки? –