PDA

View Full Version : Search in file



leila5552
پنج شنبه 05 مهر 1386, 10:36 صبح
سلام. من میخوام یه دیکشنری بنویسم. اصطلاحات را توی یک فایل متنی ذخیره کردم. و برای پیدا کردن کلمه توی فایل :
اول فایل رو خوندم توی یک رشته ریختم سپس کلمه مورد نظرم رو با indexOf("") پیدا میکنم. توی شبیه ساز برنامم درست کار میکنه ولی توی گوشی سرعتش خیلی پایینه.
به نظر شما چه راه دیگری برای پیدا کردن کلمه هست؟

منتظر جوابتون هستم.

rezaTavak
پنج شنبه 05 مهر 1386, 11:57 صبح
قاعدتا باید فایل شما به قعطات کوچکی تقسیم شود. مثلا در سایر برنامه ها یک دیکشنری به ۲۰۰ عدد فایل کوچکتر تقسیم شده است مثلdictionarymid.sourceforge.net که یک دیکشنری کدباز است و برخی هم آنرا به فارسی تبدیل کرده اند.

نکته دیگر جستجوی دو دویی را مد نظر بگیرید یعنی اینکه فرض کنید دیکشنری شما مرتب شده باشد. برای یافتن یک لغت ابتدا لغت وسط را در نظر بگیرید اگر از این بزرگتر بود بین این لغت و آخرین لغت است اگر کوچکتر بین اولین و این است. و همینطور تا مساوی شود.

leila5552
جمعه 06 مهر 1386, 11:23 صبح
سلام این مشکلم حل شد. من تنظیمات میدلتم رو هم UTF-8 کرده بودم. وقتی اون رو برداشتم درست شد.
شما میدونید چه جوری باید StringItem رو راست چین کنم؟
و اینکه آیا دستوری هست که بشه با اون زبان گوشی رو فارسی کنم؟( میخوام وقتی گزینه جستجوی فارسی انتخاب میشه زبان گوشی هم فارسی بشه.)

handinux
جمعه 06 مهر 1386, 23:40 عصر
دوست عزیز تنها راه استفاده از فارسی نویسی در موبایل استفاده از استاندارد UTF-8 است.واگر می خواهید به یکبار بین زبان های انگلیسی و فارسی سوییچ کنید ناچارید از فایلهای message استفاده کنید.در ضمن قادر نیستید stringItem یا مثلا انتخابها در شی list را راست چین کنید چون هیچ فیلدی برای این کار تعبیه نشده در هیچ شی البته یکراه به نظر خودم می رسد که امتحان نکردم و در جایی هم ندیدم آن هم اینکه از هرکدام از کلاسهای مورد نظر برای تغییر یک کلاس دیگر extend کنید و تغییرات لازم را بدهید

leila5552
شنبه 07 مهر 1386, 15:26 عصر
ممنون از پاسختون . من هم از UTF-8 استفاده کردم . میخوام موقعی که کاربر جستجوی فارسی رو انتخاب میکنه برنامه خودش زبان گوشی رو عوض کنه . حتما باید کد یا دستوری باشه.
در مورد فایل message میشه بیشتر توضیح بدید که برای چی استفاده میشه؟