resultString是我从sqlite获得的参数
resultString = result.getString(result.getColumnIndex(1));
我想将忽略大小写与用户输入进行比较,以下是我使用的代码。但它不起作用。
例如,在数据库中,我存储了一个用户名“George” 当我登录时,我必须输入“乔治”。“乔治”不起作用。
这是我要比较的代码。
if (userName.equalsIgnoreCase(resultString)) {
return true;
}
可能是什么问题?
答案 0 :(得分:7)
请尝试以下代码,
if (userName.trim().equalsIgnoreCase(resultString.trim()))
{
return true;
}
答案 1 :(得分:2)
如果情况唯一不同,您的代码应该有效。我怀疑你有前导空格或尾随空格。请尝试以下方法:
if (userName.trim().equalsIgnoreCase(resultString.trim())) {
return true;
}
答案 2 :(得分:1)
我很恐慌,并没有尝试打印出结果。问题是我的查询声明。
String whereClause = DatabaseHelper.USER_COL + " name =?";
除非输入与数据相同,否则resultString始终为空。
要修复它,我按照这篇文章中的说明操作 sqlite LIKE problem in android
String whereClause = DatabaseHelper.USER_COL + " LIKE ?";
userName = userName+"%"
答案 3 :(得分:0)
int Num;
String answer = et_q7.getText().toString();
String right_answer = "Air Pollution";
String right_answer2 = "Air";
if (answer.trim().equalsIgnoreCase(right_answer.trim()) || answer.trim().equalsIgnoreCase(right_answer2.trim())) {
Num = 1;
} else {
Num = 0;
}