Lucrul cu fișiere
Folien in diesem Satz (6)
-
- Precum am mai menționat, un fișier este o colecție de date, iar în programare se lucrează cu două clase mari de fișiere
- fișiere text
- fișiere binare
- Exemple de fișiere text:
- fisierIntrare.in
- fisierRezultate.out
- numere.txt

-
Etapele lucrului cu fișiere text
- În C++ există mai multe modalități de lucru cu fișiere text. Toate respectă următoarele etape:
- deschiderea fișierului/asocierea fișierelui cu un flux de date;
- citirea din fișier/scrierea în fișir;
- închiderea fișiereul/fluxului de date
- Pentru a putea cu fișiere, trebuie să se adauge o bibliotecă standard numită <fstream>

-
- O modalitate uzuală de a deschide fișiere constă în declararea unor variabile de tip flux. Acestea sunt de tip:
- ostream pentru fluxurile de ieșire – asociate cu fișierele în care vom scrie;
- istream pentru fluxurile de intrare – asociate cu fișierele din care vom citi;
- Declararea variabilelor se poate face astfel:
- istream fin(NUME_FISIER_INTRARE); ostream fout(NUME_FISIER_IESIRE);
- NUME_FISIER_INTRARE și NUME_FISIER IESIRE sunt șiruri de caractere care conțin numele fișierelor din care se face citirea/în care se face scrierea, de exemplu:
- istream fin("fisier.in"); ostream fout("fisier.out");
-
Citirea din fișier/scrierea în fișier
- Pentru citirea propiu-zisă a datelor din fișier/scrierea datelor în fișier se folosesc operatorii de extracție din flux/inserare în flux.
- De exemplu:
- int x; fin >> x; fout << 2 * x;
-
- Se face astfel:
- fin.close(); fout.close();
- Observații
- fișierele de intrare (deschise pentru citire) trebuie să existe. Dacă se deschide pentru citire un fișier care nu există, operațiile de citire (fin >> ...) vor eșua și comportamentul programului devine de multe ori impredictibil;
- fișierele de ieșire (deschise pentru scriere) nu trebuie să existe. La deschidere ele vor fi create. Dacă fișierul de ieșire există conținurul său va fi înlocuit cu datele scrise de programul care rulează.
-
- Următorul program este soluție corectă pentru problema #sum :
- #include <iostream>
- #include <fstream>
- using namespace std;
- ifstream fin("sum.in");
- ofstream fout("sum.out");
- int main() {
- int a , b, s;
- fin >> a >> b;
- fin.close();
- s = a + b;
- fout << s;
- fout.close();
- return 0; }
Informationen
- Beschreibung
- Der Nutzer hat seine Fachbereichs-Information gelöscht. Folienset am Lucrul cu fișiere, erstellt von Gelöschter Nutzer am 24/04/2020.
- Erstellt von
- Gelöschter Nutzer · Apr 2020
- Aktualisiert
- 24 Apr 2020
- Aufrufe
- 35
- Verlauf
-
- Erstellt von Irina Linte · 24 Apr 2020
- Kopiert von Irina Linte · 24 Apr 2020
- Bewertung