Fayldan o’qish yozish funksiyalari.
C ++ da fayllarni boshqarish nima?
Fayllar ma'lumotlarni doimiy ravishda saqlash qurilmasida saqlaydi. Fayl bilan ishlashda dasturdan olingan natijalar faylda saqlanishi mumkin. Faylda bo'lganida ma'lumotlar ustida turli xil operatsiyalarni bajarish mumkin.
Oqim - bu kirish / chiqish operatsiyalari bajariladigan qurilmaning abstraktsiyasi. Siz oqimni maqsad yoki noma'lum uzunlikdagi belgilar manbai sifatida namoyish etishingiz mumkin. Bu ulardan foydalanish bilan belgilanadi. C ++ sizga fayllar bilan ishlash usullari bilan ta'minlangan kutubxonani taqdim etadi. Keling, buni muhokama qilaylik.
Ushbu c ++ o'quv qo'llanmasida siz quyidagilarni bilib olasiz:
C ++ da fayllarni boshqarish nima?
Oqim kutubxonasi
Fayllarni qanday ochish kerak
Fayllarni qanday yopish kerak
Fayllarga qanday yozish kerak
Fayllardan qanday o'qish mumkin
Oqim kutubxonasi
Fstream kutubxonasi C ++ dasturchilariga fayllar bilan ishlash uchun uchta dars beradi. Ushbu sinflarga quyidagilar kiradi:
ofstream - Bu sinf chiqish oqimini ifodalaydi. U fayllarni yaratish va fayllarga ma'lumot yozish uchun ishlatiladi.
ifstream - Bu sinf kirish oqimini ifodalaydi. Bu ma'lumotlar fayllaridan ma'lumotlarni o'qish uchun ishlatiladi.
fstream - bu sinf odatda fayl oqimini ifodalaydi. Bu ofstream / ifstream qobiliyatlari bilan birga keladi. Bu shuni anglatadiki, u fayllarni yaratishga, fayllarga yozishga va ma'lumotlar fayllaridan o'qishga qodir.
Quyidagi rasm tushunishni sodda qiladi:
oqim kutubxonasi
Fstream kutubxonasining yuqoridagi sinflaridan foydalanish uchun uni o'z nomingizga fayl sifatida dasturingizga kiritishingiz kerak. Albatta, siz #include preprocessor yo'riqnomasidan foydalanasiz. Siz shuningdek iostream sarlavha faylini qo'shishingiz kerak.
Fayllarni qanday ochish kerak
Faylda biron bir operatsiyani bajarishdan oldin, avval uni ochishingiz kerak. Agar siz faylga yozishingiz kerak bo'lsa, uni fstream yoki ofstream moslamalari yordamida oching. Agar sizga faqat fayldan o'qish kerak bo'lsa, uni ifstream ob'ekti yordamida oching.
Uchta ob'ekt, ya'ni fstream, ofstream va ifstream, ular ichida ochiq () funktsiyaga ega. Funktsiya ushbu sintaksisni oladi:
ochish (file_name, mode);
File_name parametri ochiladigan fayl nomini bildiradi.
Tartibni parametri ixtiyoriy. Quyidagi qiymatlardan birini olishi mumkin:
Qiymat Tavsif
iOS :: ilova Qo'shish rejimi. Faylga yuborilgan natija unga qo'shiladi.
iOS :: yedim Chiqish uchun faylni ochadi, so'ng o'qish va yozishni boshqarish elementini fayl oxiriga o'tkazadi.
ios :: in Faylni o'qish uchun ochadi.
iOS :: out Bu faylni yozish uchun ochadi.
iOS :: magistral Agar fayl mavjud bo'lsa, fayl elementlari ochilishidan oldin kesilishi kerak.
Bir vaqtning o'zida ikkita rejimdan foydalanish mumkin. Siz ularni | yordamida birlashtirasiz (OR) operatori.
1-misol:
# tarkibiga kiriting
# tarkibiga kiriting
std nom maydonidan foydalanish;
int main () {
My_file-ni oqimlash;
my_file.open ("my_file", ios :: out);
if (! my_file) {
cout << "Fayl yaratilmagan!";
}
boshqa {
cout << "Fayl muvaffaqiyatli yaratildi!";
my_file.close ();
}
qaytish 0;
}
Chiqish:
Kodning ekran tasviri:
Kodni tushuntirish:
Uning funktsiyalaridan foydalanish uchun iostream sarlavhali faylni dasturga qo'shing.
O'z sinflaridan foydalanish uchun fstream sarlavha faylini dasturga qo'shing.
O'zining sinflaridan qo'ng'iroq qilmasdan foydalanish uchun std nom maydonini kodimizga kiriting.
Main () funktsiyasini chaqiring. Dastur mantig'i uning tanasida bo'lishi kerak.
Fstream sinfining ob'ektini yarating va unga my_file nomini bering.
Yangi fayl yaratish uchun yuqoridagi ob'ektga open () funktsiyasini qo'llang. Chiqish rejimi bizga faylga yozish imkonini beradi.
Fayl yaratib bo'lmagani yoki yo'qligini tekshirish uchun if ifodasidan foydalaning.
Agar fayl yaratilmagan bo'lsa, konsolda chop etish uchun xabar.
If ifodasining asosiy qismi.
Agar fayl yaratilgan bo'lsa, nima qilish kerakligini aytib berish uchun else buyrug'idan foydalaning.
Agar fayl yaratilgan bo'lsa, konsolda chop etish uchun xabar.
Faylni yopish uchun ob'ektga close () funktsiyasini qo'llang.
Else so'zlari tanasining oxiri.
Agar u muvaffaqiyatli bajarilsa, dastur qiymati qaytarishi kerak.
Asosiy () funktsiya tanasining oxiri.
Fayllarni qanday yopish kerak
C ++ dasturi tugagandan so'ng, u avtomatik ravishda ishlaydi
oqimlarni yuvadi
ajratilgan xotirani chiqaradi
ochilgan fayllarni yopadi.
Ammo, dasturchi sifatida, dastur tugashidan oldin ochiq fayllarni yopishni o'rganishingiz kerak.
Fstream, ofstream va ifstream moslamalari fayllarni yopish uchun close () funktsiyasiga ega. Funktsiya ushbu sintaksisni oladi:
void close ();
Fayllarga qanday yozish kerak
Siz to'g'ridan-to'g'ri C ++ dasturidan faylga yozishingiz mumkin. Buning uchun oqim qo'shish operatoridan (<<) foydalanasiz. Faylga yoziladigan matn ikki tirnoq ichida bo'lishi kerak.
Keling, buni namoyish qilaylik.
2-misol:
# tarkibiga kiriting
# tarkibiga kiriting
std nom maydonidan foydalanish;
int main () {
My_file-ni oqimlash;
my_file.open ("my_file.txt", ios :: out);
if (! my_file) {
cout << "Fayl yaratilmagan!";
}
boshqa {
cout << "Fayl muvaffaqiyatli yaratildi!";
my_file << "Guru99";
my_file.close ();
}
qaytish 0;
}
Chiqish :
Kodning ekran tasviri:
Uning funktsiyalaridan foydalanish uchun iostream sarlavhali faylni dasturga qo'shing.
O'z sinflaridan foydalanish uchun fstream sarlavha faylini dasturga qo'shing.
O'zining sinflarini chaqirmasdan ishlatish uchun std nom maydonini dasturga kiriting.
Main () funktsiyasini chaqiring. Ushbu funktsiya tarkibiga dastur mantig'i qo'shilishi kerak.
Fstream sinfining nusxasini yarating va unga my_file nomini bering.
My_file.txt nomli yangi fayl yaratish uchun open () funktsiyasidan foydalaning. Fayl unga yozish uchun chiqish rejimida ochiladi.
Fayl ochilmaganligini tekshirish uchun if iborasidan foydalaning.
Agar fayl ochilmagan bo'lsa, konsolda chop etish uchun matn.
If ifodasi tanasining oxiri.
Agar fayl yaratilgan bo'lsa, nima qilish kerakligini aytib berish uchun else buyrug'idan foydalaning.
Agar fayl yaratilgan bo'lsa, konsolda chop etish uchun matn.
Yaratilgan faylga bir nechta matn yozing.
Faylni yopish uchun close () funktsiyasidan foydalaning.
Else so'zlari tanasining oxiri.
Muvaffaqiyatli bajarilgandan so'ng dastur qiymatini qaytarishi kerak.
Main () funktsiyasi tanasining oxiri.
Fayllardan qanday o'qish mumkin
Fayllardan ma'lumotlarni C ++ dasturiga o'qishingiz mumkin. Bu oqim chiqarish operatori (>>) yordamida mumkin. Siz operatorni xuddi shu tarzda klaviaturadan foydalanuvchi ma'lumotlarini o'qish uchun ishlatasiz. Biroq, cin ob'ektidan foydalanish o'rniga, ifstream / fstream ob'ektidan foydalanasiz.
3-misol:
# tarkibiga kiriting
# tarkibiga kiriting
std nom maydonidan foydalanish;
int main () {
My_file-ni oqimlash;
my_file.open ("my_file.txt", ios :: in);
if (! my_file) {
cout << "Bunday fayl yo'q";
}
boshqa {
char ch;
esa (1) {
my_file >> ch;
agar (my_file.eof ())
tanaffus;
cout << ch;
}
}
my_file.close ();
qaytish 0;
}
Chiqish:
Bunday fayl yo'q
Kodning ekran tasviri:
Kodni tushuntirish:
Uning funktsiyalaridan foydalanish uchun iostream sarlavhali faylni dasturga qo'shing.
O'z sinflaridan foydalanish uchun fstream sarlavha faylini dasturga qo'shing.
O'zining sinflarini chaqirmasdan ishlatish uchun std nom maydonini dasturga kiriting.
Main () funktsiyasini chaqiring. Ushbu funktsiya tarkibiga dastur mantig'i qo'shilishi kerak.
Fstream sinfining nusxasini yarating va unga my_file nomini bering.
My_file.txt nomli yangi fayl yaratish uchun open () funktsiyasidan foydalaning. Fayl uni o'qish uchun in rejimida ochiladi.
Fayl mavjud emasligini tekshirish uchun if iborasidan foydalaning.
Agar fayl topilmasa, konsolda chop etish uchun matn.
If ifodasi tanasining oxiri.
Fayl topilgan bo'lsa, nima qilish kerakligini aytib berish uchun else buyrug'idan foydalaning.
Ch nomli char o'zgaruvchisini yarating.
Fayl tarkibini takrorlash uchun while tsikli yarating.
Ch o'zgaruvchisiga fayl tarkibini yozish / saqlash.
Faylning oxiri bo'lgan if sharti va eof () funktsiyasidan foydalaning, agar oxiriga etilmagan bo'lsa, kompilyator faylni o'qishni davom ettiradi.
Fayl tugagandan so'ng o'qishni to'xtatish uchun break operatoridan foydalaning.
Ch o'zgaruvchining tarkibini konsolga chop eting.
Badanning oxiri.
Else so'zlari tanasining oxiri.
Faylni yopish uchun close () funktsiyasiga qo'ng'iroq qiling.
Muvaffaqiyatli bajarilgandan so'ng dastur qiymatini qaytarishi kerak.
Main () funktsiyasi tanasining oxiri.
Xulosa:
Fayl bilan ishlashda dasturning natijasi yuborilishi va faylda saqlanishi mumkin.
Keyinchalik faylda bo'lganida bir qator operatsiyalarni ma'lumotlarga qo'llash mumkin.
Oqim - bu kirish / chiqish operatsiyalari bajariladigan qurilmani ifodalovchi abstraktsiya.
Oqim belgilanmagan yoki uzunlikdagi belgilar manbai sifatida ko'rsatilishi mumkin.
Fstream kutubxonasi C ++ dasturchilariga fayllar bilan ishlash usullarini taqdim etadi.
Kutubxonadan foydalanish uchun uni #include preprocessor direktivasi yordamida dasturga qo'shishingiz kerak.
Do'stlaringiz bilan baham: |