Deși nu EOF (f) do

În ultimul exemplu definește trei variabile de fișier - f1, f2, f3, fișierul relevant din produsul de tip de înregistrare, un fișier de numere întregi și bytes a fișierului. vizualizări de fișiere, în general vorbind, definește o modalitate de a stoca informații în ea. Cu toate acestea, în Turbo Pascal este nici un mijloc de control al formatului fișierelor create anterior. Prin urmare, declararea, de exemplu, un fișier de octet, puteți lucra cu orice fișier de pe disc, inclusiv grafică. În acest caz, programatorul trebuie să cunoască structura reală a fișierului. Fișierele dactilografiate constau din componente de același tip, la care accesul direct este posibil numărul de componente. Numerotarea componentelor (înregistrări) începe de la zero. Datele introduse în fișierele stocate într-o reprezentare internă mașină.







În scopul de a lucra cu fișierul, trebuie să conectați mai întâi variabila fișier cu un fișier de pe disc specific sau un dispozitiv logic. Acest lucru se face folosind procedura standard de Alocare, care are următorul format:

Alocare (<ф.п.>, <имя файла или логического устройства>);

unde <ф.п.> - variabilă fișier (ID-ul corect, a anunțat în program ca o variabilă tip de fișier);

<имя файла или логического устройства> - o variabilă de tip șir sau expresie text care conține numele fișierului sau al unității logice.

nume de fișier - este orice expresie de tip șir, care este construit în conformitate cu regulile care determină numele în MS DOS și poate conține numele (până la 8 caractere), precum și extinderea calea completă către fișierul (până la 79 caractere). În cazul în care o cale de fișier nu este specificat, fișierul trebuie să fie localizat în directorul curent (de lucru) ca programul EXE-modulul executabil.

Procedura de Atribuire în locul numelui fișierului, puteți specifica un nume de dispozitiv logic: CON - consola, o tastatură sau un ecran de afișare; PRN - imprimanta; NUL - «gol» dispozitivul (informații receptor capacitate nelimitată, care de fapt nu face nimic). Numai text informații pot fi transmise către dispozitivul logic.

Exemple Asociați utilizare Procedură sunt prezentate mai jos.

Operațiunile de bază sunt efectuate cu fișierele - o intrare de date și de ieșire. Pentru a efectua astfel de operațiuni, fișierul pe care doriți să inițializați (deschis). Fișierele dactilografiate pot fi deschise în două moduri: de a scrie (modul de a crea) și să citească și să scrie în același timp.







Pentru citirea și modificarea fișierului este deschis utilizând o procedură de resetare standard, care are următorul format:

unde <ф.п.> - variabile de fișiere asociate anterior cu un fișier existent.

In timpul acestei proceduri, un fișier de pe disc este pregătit pentru citirea informațiilor. Ca urmare, variabila speciale (pointerul) va determina începutul fișierului, și anume, component cu numărul 0. Dacă un fișier cu numele specificat nu există, nu va rula timp de eroare și se blochează programul. Pentru a evita acest lucru, utilizați o caracteristică special al IOResult, returnează 0 în cazul în care deschiderea a fost de succes, și codul de eroare în alt mod. Funcția IOResult este disponibilă numai dacă dezactivați controlul automat erorile de intrare-ieșire folosind directivele compilator. De exemplu, pentru a verifica dacă există un fișier de pe disc, puteți utiliza următorul fragment de cod:

Se creează un nou fișier asociat cu variabila de fișier <ф.п.>, și deschide-l pentru a înregistra informații. În cazul în care procedura este aplicată unui fișier existent pe disc, conținutul său se elimină și nici un mesaj în program este transmis. Noul fișier se pregătește pentru a primi informații, indicatorul fișier este setat la 0.

Citirea datelor dintr-un fișier dactilografiat, procedura deschisă, Reset, Citește făcut o procedură care are următorul format:

Citește (<ф.п.>, <список ввода>);

unde <список ввода> - introduceți o listă care conține una sau mai multe variabile de același tip ca și componente ale fișierului.

Citirea datelor începe cu valoarea curentă a cursorului de fișier. După procedura pointerul fișierului crește în funcție de numărul de elemente din lista de intrare.

Scrierea de date într-o procedură de scriere a fișierului tastat este efectuată, care are următorul format:

aici <список вывода> - ieșire o listă care conține una sau mai multe dintre expresiile de același tip ca și componente ale fișierului. După procedura pointerul de fișier este modificat în conformitate cu lungimea listei de ieșire.

Poziționarea pointerul fișierului la componenta cu numărul necesar de proceduri executate Seek, care are următorul format:

aici <номер компоненты> - expresie de tip Longint, care determină numărul de componente de fișiere, cu care să înceapă următoarea intrare sau de ieșire operațiune. Numerotarea intrările din fișierul începe cu 0, nu cu 1 (!).

Dimensiunea unui fișier dactilografiate, și anume numărul de componente în acesta, funcția returnează Mărimea fișierului (<ф.п.>) Având tipul Longint.

Numărul de intrări din fișier poate fi arbitrară. De multe ori în procesul de citire a fișierului, trebuie să verificați dacă se ajunge la sfârșitul fișierului. Ca o încercare de a citi o înregistrare inexistentă va duce la eroare de program run-time, trebuie să utilizați o funcție specială de logica

care returnează true. în cazul în care indicatorul de fișier este la sfârșitul fișierului.

schema tipică de citire unui fișier existent este după cum urmează: