خواندن اطلاعات حافظه داخلی فایل ها FileInputStream
خواندن اطلاعات از حافظه داخلی کاربا فایل ها StringBuffer
خواندن اطلاعات حافظه داخلی فایل ها
بنام خداوند بخشنده مهربان خدایی که خاک را آفرید و از آن انسان های پاک آفرید .
عرض سلام و احترام خدمت شما عزیزان در فیلم آموزشی قبل اومدیم اطاعات داخل فایل نوشتیم با استفاده از تابع FileOutputStream اما در پست قراره اطلاعات رو از فایل بخوانیم یا به اصطلاح عملیات read و یا خواندن اطلاعات به کمک FileInputStream که در ادامه توضیحات تکمیلی رو خدمتون ارائه میدم.
همان طور که شاهد بودید در فیلم آموزش نوشتن اطلاعات در فایل اگر این فیلم آموزشی رو دانلود نکردید و یا از گوگل صرفا با جستجو خواندن اطلاعات از فایل وارد سایت خانه اندروید شدید لطفا دقت کنید اول فیلم آموزشی زیر رو مشاهده کنید سپس فیلم آموزش جدید رو ببنید.فیلم آموزشی جلسه قبل :
نوشتن اطلاعات حافظه داخلی فایل ها اندروید استودیو FileOutputStream
اما یک تفاوت بین نوشتن اطلاعات و خواندن اطلاعات وجود داره اگر کمی دقت کنیم در زیر اشاره شده :
نوشتن اطلاعات FileOutputStream
خواندن اطلاعات FileInputStream
قراره چی کار کنیم ؟ ما اطلاعاتی که نوشتیم رو قراره از فایل یا حافظه داخلی بخوانیم . چطور ؟ در ادامه با ما باشید.
خوب طبق روال باید اول عملیات کست کردن رو انجام بدیم .که در آموزش قبل سورس کد در اختیارتون قرار گرفت.سپس در تابع oncreat فراخونی سورس کد زیر :
void cast(){ btnread = (Button) findViewById(R.id.btnread) ; btnexternal = (Button) findViewById(R.id.btnextrnal) ; btnwirte=(Button) findViewById(R.id.btnwire); textView= (TextView) findViewById(R.id.txtview); editText = (EditText) findViewById(R.id.edittext); }
لطفا دقت کنید حتما باید زیر روال یا تابع cast در متد اول فراخوانی بشه oncreat
سورس کد کلی خواندن اطلاعات از حافظه داخلی :
btnread.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String msg; try { FileInputStream file = openFileInput(filename); InputStreamReader inputstreamreader=new InputStreamReader(file); BufferedReader bf=new BufferedReader(inputstreamreader); StringBuffer sbufer = new StringBuffer(); while ((msg=bf.readLine())!=null) { sbufer.append(msg); } textView.setText(sbufer.toString()); } catch (FileNotFoundException ex) { ex.printStackTrace(); }catch (IOException ex){ex.printStackTrace();} } });
توضیح سورس کد بالا ==>> فیلم آموزشی رو حتما ببنید لطفا.
برای اینکه روی دکمه بخواهیم کلیک کنیم و عکس العملی رو نشان بده باید متد کلیک رو پیاده سازی کنیم.
btnread.setOnClickListener(new View.OnClickListener()
اما یادتون که نرفته ما یک متغییر سراسری بالا تعریف کرده ایم(آموزش قبل مربوط به نوشتن اطلاعات)
public static String filename="my";
فیلم آموزشی قبل : نوشتن اطلاعات حافظه داخلی فایل ها اندروید استودیو FileOutputStream
برای باز کردن مسیر و یا فایل استفاده می کنیم زیرا فایل نوشته شده در این متغییر ذخیره شده است .
FileInputStream file = openFileInput(filename);
برای خواندن اطلاعات از دستور زیر استفاده می کنیم.
InputStreamReader inputstreamreader=new InputStreamReader(file);
نکته : دقت کنید دوستان شما چه در سی شارپ سورس کد بنویسید برای خواندن اطلاعات و یا در سی پلاس پلاس تقاوتی نداره نیازمند حلقه هستید برای خواندن اطلاعات :
while ((msg=bf.readLine())!=null) { sbufer.append(msg); }
تا زمانی که به آخر فایل نرسیدی اطلاعات رو بخون :
while ((msg=bf.readLine())!=null)
هر دفعه مقدار قبل رو به مقدار جدید بچسبون : مثال : homeandroid رو در نظر بگیرد حلقه می چرخه اول h رو پیدا می کنه و مبینه که به آخر فایل نرسیده و دوباره ادامه میده و o رو پیدا می کنه و سپس m و… توسط متد append این کاراکترها به هم می چسبند و نمایش داده می شوند.
sbufer.append(msg);
و در آخر برای نمایش اطلاعات و ست کردن متن Textview از دستور زیر استفاده می کنیم:
textView.setText(sbufer.toString());
عضو خواهی می کنم اگر توضیحات کامل نبود ما سعی می کنیم توضیحات بیشتر رو توی فیلم های آموزشی بگیم که در تمامی پست ها زیر مطالب قرار گرفته و می توانید دانلود کنید.
فیلم آموزشی قبل : نوشتن اطلاعات حافظه داخلی فایل ها اندروید استودیو FileOutputStream
لطفا فیلم آموزشی رو هم ببنید برای توضیحات بیشتر :
دانلود فیلم آموزشی خواندن اطلاعات حافظه داخلی فایل ها FileInputStream
حجم فیلم : ۲۴ مگابایت
پسورد فایل فشرده : homeandroid.ir
منبع آموزش : خانه اندروید
مرررررسی یه عالمه 🙂
خواهش می کنم موفق باشین.
سلام ، با تشکر از سایت خوبتون
میخواستم بدونم سورس ها و مثال هایی که توی سایت و کانالتون میزارید
رو چه جوری میتونیم استفاده کنیم
منظورم اینه که اگه میشه به فیلم آموزشی هم برای روش استفاده از سورس ها و سمپل ها بزارید.
من خودم تا حالا سه یا چهار تا اپ نوشتم ولی چون نمی تونستم از این سورس ها و سمپل ها استفاده کنم نتونستم اونجوری که باید اپمو خوب در بیارم.
باز هم تشکر از سایت خوبتون.
با سلام و احترام
دوست عزیز محمد عرفان جباری
دقت کنید لطفا زیر تمامی پست ها و یا مطلبی که قرار می دهیم فیلم آموزشی هم در نظر گرفتیم و سورس کد رو تا حدودی توضیح دادیم و بقیه رو گفتیم فیلم آموزشی رو ببنید.الان کمی دقت کنید زیر همین پست فیلم آموزشی همین سورس کد موجود هست.موفق باشید.
با احترام.