Deschiderea fișierului pentru ieșire, Capitolul 7

Deschiderea fișierului pentru ieșire

Înainte de a ieși la un fișier, trebuie să îl deschideți. Dacă programul care generează fișierul de ieșire a fost deja folosit, este posibil ca fișierul cu rezultatele programului să existe deja pe disc. De aceea, programatorul trebuie să decidă cum să se ocupe cu fișierul vechi: să înlocuiască datele vechi cu cele noi sau să adauge date noi celor vechi. Modul de utilizare a versiunii vechi este determinat în momentul deschiderii fișierului.






Sunt posibile următoarele moduri de deschidere a unui fișier pentru scrierea de date:

  • suprascrie (scrie un fișier nou pe lângă unul existent sau creează un fișier nou);
  • adăugarea la un fișier existent.

Pentru a deschide un fișier în modul de creare a unui fișier nou sau de înlocuire a unui fișier existent, este necesar să apelați procedura Rescrieți (f), unde f este o variabilă de fișier de tip TextFile.

Pentru a deschide un fișier în modul de adăugare la datele existente conținute în acest fișier, trebuie să apelați procedura Append (f), unde f este o variabilă de fișier de tip TextFile.

În Fig. 7.1 arată caseta de dialog a programului care scrie sau adaugă un fișier text.






Fig. 7.1. Dialogul pentru scrierea-adăugarea la un fișier

Listei 7.1 se afișează procedura care începe prin apăsarea butonului Înregistrare. Se deschide fișierul în modul de creare a unui nou sau înlocuirea unui fișier existent și scrie textul care se află în câmpul componentei Memo1.

Trebuie să introduceți numele fișierului în timp ce lucrați în câmpul Editare. Puteți specifica un nume de fișier predefinit în timpul dezvoltării formularului de aplicare. Pentru a face acest lucru, trebuie să atribuiți o valoare, de exemplu test.txt, proprietății Edit1.Text.

Listing 7.1. Crearea unui fișier nou sau înlocuirea unui fișier existent

procedura TForm1.Button1Click (expeditor: TObject);

f: TextFile; // fișier

fName: String [80]; // filename

Rescrie (f); // deschis pentru a suprascrie

pentru i: = 0 la Memol.Lines.Count do // șirurile sunt numerotate de la zero

CloseFile (f); // închideți fișierul

MessageDlg ("Date WRITTEN to file", mtlnformation, [mbOk], 0);

În lista 7.2 se afișează procedura care se pornește făcând clic pe butonul Adăugați. Se deschide un fișier al cărui nume este specificat în câmpul Edit1 și se adaugă conținutul câmpului Memol.

Listing 7.2. Adăugarea la un fișier existent

procedura TForm1.Button2Click (expeditor: TObject);

f: TextFile; // fișier

fName: String [80]; .// filename

i: întreg; începe

Adăugați (f); // deschideți pentru a adăuga

pentru i: = 0 la Memo1.Lines.Count do // șirurile sunt numerotate de la zero

CloseFile (f); // închideți fișierul

MessageDlg ("Date ADDED to file", mtInformation, [mbOk], 0);







Articole similare

Trimiteți-le prietenilor: