آموزش اندروید فصل چهارم قسمت دوم – ذخیره سازی داخلی/خارجی

آموزش برنامه نویسی اندروید فصل چهارم

در قسمت چهلم آموزش اندروید در ادامه آموزش قبل در رابطه با مبحث مهم ذخیره اطلاعات و نحوه ذخیره سازی آموزش داده شده که این بخش شامل ذخیره سازی داخلی و مختصری از ذخیره سازی خارجی میباشد.

آموزش اندروید فصل چهارم قسمت دوم – ذخیره سازی داخلی/خارجی

توجه : برای مشاهده تصاویر در سایز اصلی برروی آنها کلیک کنید.

ذخیره سازی در حافظه داخلی

ذخیره سازی در حافظه داخلی زمانی استفاده میشود که نیاز به ذخیره خصوصی یا private اطلاعات داریم بدین معنی که اطلاعات در حافظه داخلی دستگاه ایجاد و تنها توسط خود برنامه قابل دسترسی باشند و با حذف برنامه نیز پاک شوند.

برای درج اطلاعات باید متد openFileOutput فراخوانی شود که شامل دو پارامتر ورودی میباشد یکی نام فایل و دیگری MODE که میتوان PRIVATE , PUBLIC و… باشد این کار باعث ایجاد یک شی از نوع FileOutputStream میشود که میتوان از طریق این شی متد write() را فراخوانی کرده و اطلاعات را در حافظه درج  کرد.

همچنین برای خواندن اطلاعات از حافظه داخلی ابتدا باید یک شی از نوع FileInputStream که با استفاده از متد openFileInput() ایجاد میشود و سپس با استفاده متدی مثل read() یکی یکی کاراکتر هارا خوانده و نمایش میدهد.

.

با مثال زیر این روش را بهتر درک خواهید کرد پس یک پروژه جدید بنام InternalStorage ایجاد کرده و در فایل activity_main.xml ابزار های زیر را ایجاد میکنیم

تمام این ابزارها را بصورت گرافیکی ایجاد کرده و زحمت کدنویسی رو به خودتون ندید!

حال در فایل جاوای برنامه MainActivity.java دستورات زیر را مینویسیم

حال برنامه را اجرا کرده و متنی را در EditText بنویسید سپس دکمه Save را کلیک کنید خواهید دید متن پاک شده و  پیغام تایید نیز نمایش داده میشود سپس دکمه load را کلیک کنید و خواهید دید متن سیو شده در TextView نمایش داده میشود

آموزش کاربردی اندروید-قسمت چهلم

روش کار

در فایل جاوا برنامه تا قسمت تعریف عملکرد دکمه save اقدام به تعریف اشیا و متغیرهای مختلف که در ادامه برنامه استفاده میشوند کرده ایم حال به دستوراتی که برای دکمه save نوشته شده توجه کنید

.

در این بخش ابتدا مقدار درون EditText را درون متغیری به نام data قرار میدهیم سپس با استفاده از FileOutputStream و متد openFileOutput که در ابتدای آموزش توضیح داده شد اقدام به ذخیره مقدار میکنیم و نام فایل را متغیر file که در ابتدای کدنویسی مقداری دلخواه برایش تعریف شده قرار میدهیم و MODE مورد نظر را نیز قرار میدهیم سپس از شی ایجاد شده استفاده میکنیم و متد write را فراخوانی میکنیم و در انتها نیز Close . فرایند ذخیره سازی با همین سه خط کد به اتمام میرسد پس در ادامه میتوان EditText را خالی و پیغام مناسب را نمایش داد.توجه کنید که این دستورات را درون بلاک try و catch قرار دادیم تا در صورت بروز خطا اقدام مناسب را انجام دهد.

حال به دستورات درون دکمه load دقت کنید

در این بخش نیز از بلاک try و catch استفاده کردیم و درون آن از FileInputStream و متد openFileInput استفاده کرده و تنها نام فایل را به عنوان آرگومان میدهیم سپس با استفاده از یک حلقه for یکی یکی کاراکترها را دریافت کرده و در انتها درون TextView قرار میدهیم.

اگر به قسمت DDMS رفته زبانه fileExplorer را انتخاب کنید و به مسیر مربوطه بروید خواهید دید یک فایل با همان نام file که انتخاب کرده اید ایجاد شده

آموزش کاربردی اندروید-قسمت چهلم

ذخیره سازی در حافظه خارجی

در بخش قبل نحوه استفاده از حافظه داخلی را آموختیم اما در بعضی مواقع ممکن است که بخواهیم اطلاعاتی را بخاطر حجم زیاد و یا نیاز به , به اشتراک گذاشتن , درون حافظه خارجی دستگاه یا SDCard ذخیره کنیم.

از نکات اصلی ذخیره سازی در حافظه خارجی میتوان به دستورات زیر اشاره کرد

ابتدا از متدgetExternalStorageDirectory() برای دریافت مسیر قرار گیری حافظه خارجی استفاده میکنیم که معمولا این حافظه در یک دستگاه واقعی در مسیر /sdcard و در یک شبیه ساز در مسیر mnt/sdcard قرار دارد اما استفاده از مسیر یکسان کار درستی نیست زیرا که ممکن است هرسازنده دستگاه مسیر مشخص خود را داشته باشد.

سپس در کارت حافظه با استفاده از متد getAbsolutePath فولدری بنام دلخواه ایجاد کرده و سپس اطلاعات خود را وارد میکنیم.

مدرس : خانم مهندس داودی نژاد

آموزش اندروید فصل چهارم قسمت اول

درباره نویسنده

مطالب مرتبط

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *