View Full Version : مشکل در جستجو
sara_traveler
یک شنبه 08 تیر 1393, 13:23 عصر
سلام
من در جستجو در لیست ویو کد جستجو گذاشتم
فقط مشکلش اینه که زمانی که فونت فارسی می کنیم با اعداد فارسی جستجو می کنم نمایش نمیده
اما اگر با اعداد انگلیسی جستجو کنم درسته
مشکل در کجاست؟
parvizwpf
یک شنبه 08 تیر 1393, 14:23 عصر
اگر کد بگذارید بهتره
sara_traveler
یک شنبه 08 تیر 1393, 15:35 عصر
sql="select CodeTafzil , Title , tel FROM "+ TABLE+" "; if (et.getText().toString().equals("")==false)
sql+= " where CodeTafzil like '"+et.getText()+ "' ";
parvizwpf
یک شنبه 08 تیر 1393, 16:01 عصر
معمولا برای جستجوی لایک فارسی اینطوری مینویسند:
name like '%' || ? || '%'"
? پارامتر ارسال هست در واقع. موقع اجرای دستور سمت دیتابیس هم پارامترها رو اینطور میفرستیم:
Cursor MyCursor = database.rawQuery(queryString, parameters);
که در واقع لسیتی از نوع String هست.
rubiks.kde
یک شنبه 08 تیر 1393, 19:07 عصر
اعدادی رو که ذخیره کردید فارسی هستن یا انگلیسی؟
مطمئنا که انگلیسی هستن و نباید هم کار کنه چون از نظر کاراکتری عدد 1 فارسی و عدد 1 انگلیسی دارای کد متفاوت هستن در واقع کاراکتر مساوری ندارن.
بهترین راه برای شما اینه که اعداد رو زمانی که میگیری و میخوایی جست و جو کنی به انگلیسی تبدیل کنی.
sara_traveler
دوشنبه 09 تیر 1393, 10:02 صبح
بله اعداد انگلیسی هستن
چون من اطلاعات از اسکیول خونده و در اسکیول لایت ذخیره می کنم و حالا میخوام جستجو انجام بدم
چطور میتونم اعداد به انگلیسی تبدیل کنم؟
rubiks.kde
دوشنبه 09 تیر 1393, 10:58 صبح
با استفاده از این تابع.این تابع یک رشته رو به صورت ورودی میگیره و اگه توی رشته عدد فارسی باشه اون رو تبدیل میکنه.
public static String convertDigits(String in){
String[] persianDigits = {"۰","۱","۲","۳","۴","۵","۶","۷","۸","۹"};
String[] englishDigits = {"0","1","2","3","4","5","6","7","8","9"};
for (int i = 0; i < englishDigits.length; i++) {
in = in.replace(persianDigits[i], englishDigits[i]);
}
return in;
}
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.