ورود

View Full Version : راهنمایی در نحوه استفاده از فایل های text



mehdidanesh
سه شنبه 30 تیر 1394, 18:29 عصر
با سلام خدمت همه؛
یک بحثی در مورد نحوه خواندن فایل ها در اندروید را می خواستم شروع کنم و دوستانی که نظری دارند خوشحال می شم که مطرح کنند:
1. اینکه کتابچه هایی که دارای جداول در مورد توضیحات مطالب باشه
2. اینکه نتوان ساختار یک کتابچه را در قالب یک Sqlite آورد حالا به دلایل مختلف مثل وجود جدول، عکس و...
3. اینکه فرض کنید که یک فایل ورد 200 صفحه ای داشته باشیم
در چنین مواقعی از چه روشی برای خواندن مطالب را پیشنهاد می کنید که سرعت و بهینگی در آن رعایت شده باشد
ضمنا از PhoneGap و ionic هم نمی خواهیم استفاده کنیم.
لطفا دوستان دیدگاه و نظراتشون رو برای استفاده بهتر ارائه دهند
باتشکر

pbm_soy
چهارشنبه 31 تیر 1394, 03:15 صبح
پیشنهاد من همیشه استفاده از فایل متنی یا Html ویا XML بوده است!
چون دیتابیس همیشه نسبت به این موارد سنگینتر است و نیاز به منابع بیشتری دارد(CPU , RAM ,...) هرچند که Sqlite جزو سبکترین دیتابیسها است
وقتی ما نمیخواهیم بروی داده ها ویرایس و پرس وجوئی را اجرا کنیم پس استفاده از دیتابیس لزوم چندانی ندارد (قبلا در این مورد تو این سایت مفصل نوشته بودم!)
حتی باز جرات پیدا میکنم و میگم برنامه دیکنشری هم نیاز به دیتابیس ندارد میتوان آنرا با یک فایل متن یا نهایتا xml پیاده سازیش کرد هرچند که شاید دوستان بگن که دیکشنری چون نیاز به جستجو دارد و جزو عملیات لاصلی آن است برای سرعت بخشیدن به اینکار امکانات ایندکسینگ دیتابیس واقعال سرعت را بالا میبرد ولی باید بگم ه یک دیکشنری مانند fastdic حدود 40هزار تا 55 هزار تا لغت دارد البته من حالت انگلیسی به فارسی آنرا بررسی کرده بودم حالا اگه این داده ها را در یک فایل متنی بصورت یونی کد ذخیره کنیم حجم فایل چیزی در حدود 4 الی 5 مگابایت میشود و در زمان اولین اجرای برنامه میتوان کل فایل را در یک آرایه لود کرد و همه جستجوها را در آن آرایه انجام مسلما سرعت جستجو در حافظه رم بالا خواهد بود و نیازی به استفاده از ایندکس نیست

و یا مواردی را دیدم در برنامه های تحت ویندوز و مولتی مدیا و همینطور در برنامه های وب سایتی قرآنی که متن قرآن در دیتابیس ذخیره کرده بودندو عملیات جستجو نمایش را از آن دیتابیس انجام میدادند اولا آیه های قرآن حدود 66هزار تا میباشد که خیلی راحت در اول کار میتوان آنرا به حافظه لود کرد مضافا براینکه قرار نیست هیچ تغییری در داده های انجام دهیم حالا چه قرآن باشد چه دیکشنری چه کتاب آموزش آشپزی!
فقط قرار است نمایش داده شوند!
در ضمن بنده اصلا امکانات و قابلیتهای دیتابیس را رد نمیکنم

mehdidanesh
چهارشنبه 31 تیر 1394, 10:07 صبح
پیشنهاد من همیشه استفاده از فایل متنی یا Html ویا XML بوده است!
چون دیتابیس همیشه نسبت به این موارد سنگینتر است و نیاز به منابع بیشتری دارد(CPU , RAM ,...) هرچند که Sqlite جزو سبکترین دیتابیسها است
وقتی ما نمیخواهیم بروی داده ها ویرایس و پرس وجوئی را اجرا کنیم پس استفاده از دیتابیس لزوم چندانی ندارد (قبلا در این مورد تو این سایت مفصل نوشته بودم!)
حتی باز جرات پیدا میکنم و میگم برنامه دیکنشری هم نیاز به دیتابیس ندارد میتوان آنرا با یک فایل متن یا نهایتا xml پیاده سازیش کرد هرچند که شاید دوستان بگن که دیکشنری چون نیاز به جستجو دارد و جزو عملیات لاصلی آن است برای سرعت بخشیدن به اینکار امکانات ایندکسینگ دیتابیس واقعال سرعت را بالا میبرد ولی باید بگم ه یک دیکشنری مانند fastdic حدود 40هزار تا 55 هزار تا لغت دارد البته من حالت انگلیسی به فارسی آنرا بررسی کرده بودم حالا اگه این داده ها را در یک فایل متنی بصورت یونی کد ذخیره کنیم حجم فایل چیزی در حدود 4 الی 5 مگابایت میشود و در زمان اولین اجرای برنامه میتوان کل فایل را در یک آرایه لود کرد و همه جستجوها را در آن آرایه انجام مسلما سرعت جستجو در حافظه رم بالا خواهد بود و نیازی به استفاده از ایندکس نیست

و یا مواردی را دیدم در برنامه های تحت ویندوز و مولتی مدیا و همینطور در برنامه های وب سایتی قرآنی که متن قرآن در دیتابیس ذخیره کرده بودندو عملیات جستجو نمایش را از آن دیتابیس انجام میدادند اولا آیه های قرآن حدود 66هزار تا میباشد که خیلی راحت در اول کار میتوان آنرا به حافظه لود کرد مضافا براینکه قرار نیست هیچ تغییری در داده های انجام دهیم حالا چه قرآن باشد چه دیکشنری چه کتاب آموزش آشپزی!
فقط قرار است نمایش داده شوند!
در ضمن بنده اصلا امکانات و قابلیتهای دیتابیس را رد نمیکنم

با سلام خدمت شما؛
دوست عزیز این مطلبی رو که در موردش صحبت کردید با phonegap پیاده می شود؟
چون من در مورد این مطالب که شما گفتید جز phonegap و یک مورد ک ارتباط txt با ایکلیپس رو داشتم تجربه ی دیگه ای نداشتم اگه امکان داره بیشتر در موردش توضیح بدید یا لینک تاپیکش رو بذارید تا کسب تجربه کنم با تشکر