خانه اندروید

800 ساعت آموزش اختصاصی

بیش از 30 هزار دانشجو

آموزش های پروژه محور

مطالب پیشنهادی حتما مشاهده کنید :

خواندن اطلاعات حافظه داخلی فایل ها FileInputStream

خواندن اطلاعات حافظه داخلی فایل ها FileInputStream

خواندن اطلاعات حافظه داخلی فایل ها 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

 

خانه اندروید دانلود فیلم آموزشی  لطفا فیلم آموزشی رو هم ببنید برای توضیحات بیشتر :

homeandroid.ir  دانلود فیلم آموزشی خواندن اطلاعات حافظه داخلی فایل ها FileInputStream

حجم فیلم آموزشی   حجم فیلم : ۲۴ مگابایت

پسورد فایل   پسورد فایل فشرده : homeandroid.ir

خانه اندروید منبع آموزش : خانه اندروید

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

جواد محمدی هستم بنیان‌گذار سایت خانه اندروید در خدمتون هستیم با آموزش و مفاهیم برنامه نویسی اندروید-نزدیک به 10 سال هست در حوزه برنامه نویسی فعالیت می کنم. مسلط به kotlin,java,flutter,php هستم . در خانه اندروید دانستی های خودم را در اختیار تمامی علاقمندان به برنامه نویسی قرار میدم.تشکر از اینکه خانه اندرورید رو دنبال می کنید.

قبل از ارسال دیدگاه

  • قبل از ارسال دیدگاه: لطفا دیدگاه خودتون رو فقط در مورد این مطلب بنویسید.سپاسگزارم.

    دیدگاه های طولانی نادیده گرفته می شوند لذا دیدگاه خودتان را در دو خط خلاصه کنید.

    دیدگاه های که شامل توهین یا متن توهین آمیز اصلا تایید نمی شود.

    به دیدگاه های بی نام و نشان که ایمیل فیک و نام فیک وارد می کنند پاسخ داده نمی شود

4 دیدگاه

  1. مهرگان گفت:

    مرررررسی یه عالمه 🙂

  2. محمد عرفان جباری گفت:

    سلام ، با تشکر از سایت خوبتون
    می‌خواستم بدونم سورس ها و مثال هایی که توی سایت و کانالتون میزارید
    رو چه جوری میتونیم استفاده کنیم
    منظورم اینه که اگه میشه به فیلم آموزشی هم برای روش استفاده از سورس ها و سمپل ها بزارید.
    من خودم تا حالا سه یا چهار تا اپ نوشتم ولی چون نمی تونستم از این سورس ها و سمپل ها استفاده کنم نتونستم اونجوری که باید اپمو خوب در بیارم.

    باز هم تشکر از سایت خوبتون.

    • Admin گفت:

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