|
< C a p i t o l u l a n t e r i o r < |
Scrierea în fișiere Avem nevoie de o variabilă de tip fișier, căruia îi atribuim un nume de fișier cu o locație pe discul local. Apoi pentru accesarea fișierului avem mai multe opțiuni: - dacă fișierul nu există, putem să-l creăm, folosind REWRITE; - dacă vrem să citim fișierul de la început, folosim RESET; - dacă vrem să adăugăm informații fișierului deschis, folosim APPEND. Scrierea într-un fișier se face folosindu-ne de instrucțiunile write și writeln. Programul va crea fișierul text.txt care va arăta astfel: Citirea din fișiere Citirea se face prin intermediul instrucțiunilor read și readln care își păstrează semnificația.
Procedeul pentru a deschide un fișier fie pentru scriere fie pentru citire este simplu:
Câteva observații: Dacă modul de lucru ales este fie REWRITE fie APPEND, atunci orice încercare de a folosi un read/readln va fi întâmpinat de o eroare la rularea programului în momentul executării instrucțiunilor. Varianta inversă nu e la fel de verbală. Care variantă opusă? Când modul de lucru e dat de RESET și încercăm să scriem ceva în fișier. Pur și simplu nimica nu va fi scris. Fișiere cu tip Până acum am vorbit despre fișiere text, fișiere în care puteam scrie text, însă în PASCAL putem să ne folosim de fișiere cu tip, care ne pot fi de folos. Mult folos. Să vedem un exemplu:
Începem declarând structura pe care o vrem folosindu-ne de tipul RECORD. Apoi declarăm o variabilă fișier în forma file of tipul definit de noi și, desigur, o variabilă temporară care să o folosim pentru a scrie în fișier. Scrierea se face doar cu write căci writeln nu are sens în situația aceasta. Delimitarea unui element de următorul se face va automat și nu e nevoie de o linie nouă. De altfel, dacă folosim writeln vom primi o eroare la compilare. Și ca fapt divers, cu acest program am scris 10 intrări similare în fișierul nostru. Citirea
Avem aceeași ordine a pașilor ca și la citirea obșinuită însă cu o diferență. Seek. Această instrucțiune ne poziționează cursorul pe intrarea cu numărul introdus ca al doilea parametru. Atenție! Primul element are indicele 0, al doilea are indicele 1. De aceea am și scris că afișăm intrarea a treia când noi am trimis 2 ca al doilea parametru. Dacă poziția la care cerem să fie mutat cursorul este mai mare decât numărul intrărilor existente, atunci vom fi întâmpinați de o eroare în timpul rulării programului la instrucțiunea de citire. |
> C a p i t o l u l u r m ă t o r > |
Ți-a fost de ajutor ce am scris aici?
Motivul:
Hei, mersi de răspuns.
|