File Processing (File တွေကို ဖတ်ခြင်းနဲ့ ရေးခြင်း)

B2.5: File processing
မြန်မာလို: file တွေကို ဖတ်ခြင်းနဲ့ ရေးခြင်း


ခြုံငုံ မိတ်ဆက်

Program တွေမှာ persist data (program ပိတ်သွားပြီးနောက်မှာလည်း ဒေတာ ဆက်ရှိနေအောင် သိမ်းထားခြင်း) လုပ်ဖို့ လိုပါတယ်။ ဆိုလိုတာက program ပြီးသွားတဲ့နောက်မှာလည်း မပျောက်တဲ့ အချက်အလက်တွေကို သိမ်းထားဖို့နဲ့ အရင် run ခဲ့တုန်းက သိမ်းခဲ့တဲ့ အချက်အလက်တွေကို ပြန်ယူသုံးဖို့ပါ။ File processing ဆိုတာ program တွေက disk (ကွန်ပျူတာရဲ့ storage) ပေါ်က text file (စာသားပဲ ပါတဲ့ file) တွေထဲကနေ ဖတ်ပုံနဲ့ အဲဒီ file တွေထဲကို ရေးပုံ ဖြစ်ပါတယ်။

# ခေါင်းစဉ် Syllabus အဓိက အယူအဆများ Level
1 Reading Files (file ထဲက ဒေတာကို ဖတ်ခြင်း) B2.5.1 Scanner (keyboard ဒါမှမဟုတ် file ကနေ input ဖတ်တဲ့ Java class)၊ BufferedReader (file ကို ထိရောက်စွာ ဖတ်တဲ့ Java class)၊ line တွေကို parse (အဓိပ္ပာယ်ရှိတဲ့ အပိုင်းတွေအဖြစ် ခွဲထုတ်) လုပ်ခြင်း၊ file ထဲက ဒေတာတွေကို ကိုင်တွယ် တွက်ချက်ခြင်း SL + HL
2 Writing Files (file ထဲကို ဒေတာ ရေးခြင်း) B2.5.1 FileWriter (file ထဲ စာရေးတဲ့ Java class)၊ BufferedWriter (file ထဲ ထိရောက်စွာ ရေးတဲ့ Java class)၊ overwrite (ရှိပြီးသား content ကို ဖျက်ပြီး အသစ် ရေးခြင်း) နဲ့ append (ရှိပြီးသား content ရဲ့ နောက်မှာ ဆက်ရေးခြင်း) ကွာခြားချက်၊ CSV (comma နဲ့ ခြားထားတဲ့ စာသား file) output SL + HL

Syllabus နဲ့ Level ကော်လံတွေက IB Computer Science သင်တန်းအတွက်ပါ။ SL (Standard Level) နဲ့ HL (Higher Level) ဆိုတာ IB သင်တန်းရဲ့ အဆင့်နှစ်ဆင့်ပါ။ SL + HL ဆိုတာ အဆင့် နှစ်ဆင့်လုံးမှာ လေ့လာရတယ်လို့ ဆိုလိုပါတယ်။


ဘယ်အလုပ်အတွက် ဘာကို သုံးမလဲ

လုပ်ရမယ့် အလုပ် အကောင်းဆုံး နည်းလမ်း
Data type (ဒေတာ အမျိုးအစား) ရောနေတဲ့ (int, String) file အသေးလေးကို ဖတ်ခြင်း Scanner(new File(...))
Text file အကြီးကို line တစ်ကြောင်းချင်း ဖတ်ခြင်း BufferedReader(new FileReader(...))
File ထဲ ရေးခြင်း (overwrite) FileWriter("file.txt")
File ရဲ့ နောက်မှာ ဆက်ရေးခြင်း (append) FileWriter("file.txt", true)
newLine() နဲ့ ထိရောက်စွာ ရေးခြင်း BufferedWriter(new FileWriter(...))
အမြဲတမ်း try/catch ထဲမှာ ထည့်ရေးပြီး file ကို close (ပိတ်) လုပ်ပါ

Table of contents

  • Reading Files File ထဲက ဒေတာကို ဖတ်ခြင်း
  • Writing Files File ထဲကို ဒေတာ ရေးခြင်း

© EduCS.me. ကွန်ပျူတာသိပ္ပံ ပညာရေးအတွက် အရင်းအမြစ်တွေ စုထားတဲ့ နေရာပါ။ EduCS is an independent educational resource. It is not affiliated with, or endorsed by, the International Baccalaureate Organization. (EduCS ဟာ သီးခြား ပညာရေး အရင်းအမြစ်တစ်ခုပါ။ International Baccalaureate Organization နဲ့ ဆက်စပ်မှု မရှိသလို သူတို့ရဲ့ ထောက်ခံချက်လည်း မရှိပါဘူး။) ဆက်သွယ်ရန်