Reja: C++ da matnli fayllar bilan ishlash


Download 26.75 Kb.
bet2/4
Sana13.01.2023
Hajmi26.75 Kb.
#1090332
1   2   3   4
Bog'liq
c da fayltoifasidagi strukturaviy ma\'lumotlarni soha bo\'yicha ishlatgan holda dastur tuzish

Tartib parametri yo'q bo'lishi mumkin, bu holda fayl ushbu oqim uchun standart rejimda ochiladi.
Fayl muvaffaqiyatli ochilgandan so'ng (har qanday rejimda) F o'zgaruvchisi rost, aks holda yolg'onni saqlaydi. Bu faylni ochish operatsiyasining to'g'riligini tekshiradi.
Faylni yozish rejimida quyidagi usullardan birida ochishingiz mumkin (misol sifatida D: \\ game \\ noobs.txt faylini oling):
// birinchi yo'l
oqimdan tashqari F;
F.open ("D: \\ game \\ noobs.txt", ios :: out);
// ikkinchi yo'l, iOS :: chiqish rejimi sukut bo'yicha
// uchun oqimoqimdan tashqari
oqimdan tashqari F;
// uchinchi yo'l o'zgaruvchining tavsifini va oqim turini birlashtiradi
// va faylni bitta bayonotda oching
ofstream F ("D: \\ o'yin \\ noobs.txt", iOS :: tashqariga);
Faylni yozish rejimida ochgandan so'ng, bo'sh fayl yaratiladi, unda ma'lumot yozish mumkin bo'ladi.
Agar siz mavjud faylni oldindan yozish rejimida ochmoqchi bo'lsangiz, rejim sifatida iOS :: ilova qiymatidan foydalaning.
Faylni yozish rejimida ochganingizdan so'ng, siz unga standart chiqish moslamasi o'rniga xuddi ekranga yozishingiz mumkin.coutochiq fayl nomini ko'rsatishingiz kerak.
Masalan, a o'zgaruvchisini F oqimiga yozish uchun chiqish operatori quyidagicha ko'rinadi:
b, c, d o'zgaruvchilarning G oqimiga ketma-ket chiqishi uchun chiqish operatori:
G<< <
Oqim operator yordamida yopiladi:
Misol:
D: \\ game \\ noobs.txt matn faylini yarating va unga n ta haqiqiy sonni yozing.
# "stdafx.h" ni o'z ichiga oladi
#o'z ichiga oladi
#o'z ichiga oladi
#o'z ichiga oladi
std nom maydonidan foydalanish;
int main ()
setlocale (LC_ALL, "RUS");
int i, n;
ikki barobar a;
// faylga ma'lumotlarni yozish uchun oqimni tavsiflaydi
oqimdan tashqari f;
// faylni yozish rejimida ochish,
//rejimiOS:: tashqarigasukut bo'yicha o'rnatilgan
f.open ("D: \\ o'yin \\ noobs.txt", iOS :: tashqariga);
// haqiqiy sonlar sonini kiriting
cout<<" n="; cin>> n;
// haqiqiy raqamlarni kiritish uchun sikl
// va ularni faylga yozing
uchun (i = 0; i
cout<<"a=";
// raqam kiriting
cin >> a;
f<<<"\t";
// oqimni yoping
f.yopish ();
tizim ("pauza");
qaytish 0;
Matn faylidan ma'lumotni o'qish uchun siz turdagi o'zgaruvchini e'lon qilishingiz kerak ifstream... Shundan so'ng, operator yordamida o'qish uchun faylni ochishingiz kerak ochiq... Agar o'zgaruvchi F deb nomlangan bo'lsa, unda birinchi ikkita operator quyidagicha bo'ladi:
F.open ("D: \\ game \\ noobs.txt", iOS :: ichida);
Faylni o'qish rejimida ochganingizdan so'ng, siz undan ma'lumotni klaviaturadagi kabi o'qishingiz mumkin, faqat o'rnigacinma'lumotlar o'qiladigan oqim nomini belgilang.
Masalan, F oqimidan a o‘zgaruvchisiga o‘qish uchun kirish bayonoti quyidagicha ko‘rinadi:
Matn muharririda ikkita raqam, agar ular orasida kamida bitta belgi bo'lsa, ajratilgan hisoblanadi: bo'sh joy, jadval, satr oxiri belgisi. Agar dasturchi matn faylida qancha va qanday qiymatlar saqlanganligini oldindan bilsa yaxshi bo'ladi. Biroq, faylda saqlanadigan qiymatlarning turi ko'pincha oddiygina ma'lum va ularning soni har xil bo'lishi mumkin. Ushbu muammoni hal qilishda siz fayldagi qiymatlarni birma-bir o'qib chiqishingiz kerak va har bir o'qishdan oldin faylning oxiriga yetib kelganligini tekshiring. Buning uchun funksiya mavjud F. eof().
Bu yerda F - oqimning nomi.Funksiya mantiqiy qiymatni qaytaradi: faylning oxiriga yetganligiga qarab true yoki false. Shunday qilib, butun faylning mazmunini o'qish uchun tsikl quyidagicha yozilishi mumkin:

Download 26.75 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling