Menü
Ingyenes
bejegyzés
itthon  /  Tanács/ Mik azok az adatfájlok? Az adatfájlok terv-szinopszis az informatika és az IKT számára a témában

Mik azok az adatfájlok. Az adatfájlok terv-szinopszis az informatika és az IKT számára a témában

7. lecke

Lecke kidolgozása az "Adatfájlok" témában.

Az óra témája: Adatfájlok.

A lecke célja: Tanítsa a diákokat az adatállományra. A fájlokkal való munka folyamata.

Az óra céljai:

  1. Adat fájlok.
  2. A fájlokkal való munka folyamata.

Az óra felszerelése:számítógép, kivetítő.

Tanterv

1. Szervezési pillanat (köszöntés).

- Helló, üljön le. Ki hiányzik ma?

2. Új anyag elsajátítása.

Adat fájlok.

Adatfájl egy mágneses adathordozón elhelyezett, információ tárolására szolgáló hely, amelynek saját neve van. Fájl - ez is számok (kódok) sorozata, amelyek egy része vezérlőkódként értendő (például létezik fájlvégződő kód, szöveges fájloknál sorvégzáró). Hogy mi ez a számsor, azt csak a programban lehet megoldani. A fájlban nincsenek jelek az információ jellegének meghatározására.

Fájllal fizikai szinten rendkívül nehéz dolgozni. Ezért egy fájlhoz, mint egy közönséges változóhoz, a Pascal határozza meg a típust. Például írhat:

a: egész fájl; (Egész fájl.)

f: karakterlánc fájl; (Soros fájl.)

Fájlkezelési algoritmus:

  1. A fájl egy speciális eljárással egy fájlváltozóhoz van társítva.
  1. Egy fájlváltozó megnyílik vagy létrejön (a fájl fizikailag megnyílik, de a programozó nem vesz részt ebben a folyamatban).
  2. Elvégzik a szükséges adatolvasási és írási műveleteket.
  3. A fájlváltozó le van zárva.

1. célkitűzés. Írjunk egy programot, amelyben a következő műveleteket hajtjuk végre:

  1. A fájl megnyílik.
  2. 100 egymást követő egész szám van írva.
  3. A fájl zárva van.
  4. A fájl megnyílik.
  5. A fájlban található számok beolvasásra és a képernyőre nyomtatásra kerülnek.

Program példa;

I, u: egész szám;

(Egy változó van definiálva, amely aztán a fájlhoz köthető,

F: egész fájl;

kezdődik

(A fájlváltozó a fájlhoz van kötve,

Kinek a nevét jelölik az aposztrófok)

Hozzárendelés (f, 'fájl');

(Mivel ilyen fájl még nem létezik, létrejön és megnyílik)

Átírás (f);

(A számok be vannak írva a fájlba)

I esetén: = 1-100 írjon (f, i);

(A fájl zárva van)

Bezárás (f);

(Mivel a fájl már létezik, csak megnyílik)

Visszaállítás (f);

(A számok leolvasásra kerülnek a fájlból, és megjelennek a kijelzőn)

I esetén: = 1-100

Kezdődik

Olvassa el (f, u);

Írj (‘’, u);

Vége;

vége.

Egy fájlváltozó nem lehet teljesen normális változó. Ezért vannak speciális eljárások és funkciók a fájlváltozókhoz. Rövid lista Az alábbiakban ismertetjük a Borland Pascal fájljaival kapcsolatos eljárásokat és funkciókat.

  1. hozzárendelni - eljárás, amely egy fájlt egy fájlváltozóhoz köt.
  2. Visszaállítás - megnyit egy meglévő fájlt, és a fájl pozíciómutatóját a nulla elemre állítja.
  3. átírás - Fájlt hoz létre.
  4. csonka - csonkolja a fájlt az aktuális pozíciótól kezdve.
  5. keresni - a fájlmutatót a megadott pozícióba állítja.
  6. eof - egy függvény, amely igaz értéket ad vissza, ha elérte a fájl végét, és hamis, ha nem.
  7. fájl méret - kiszámítja a fájlméretet az iratnyilatkozatban megadott típusú rekordok számában.

jegyzet

Egy fájl esetében létezik olyan, mint az aktuális pozícióra mutató mutató. Ez egy egész szám (Borland Pascal esetében ez olyan érték longint ), amely az aktuális fájlhely számát tárolja. Minden olvasási / írási művelet során a mutató a következő rekordra kerül. A rekord a fájlnyilatkozatban megadott típus hossza. A fájlban lévő rekordok számozása nulláról indul.

Az adott példában szereplő adatstruktúrák teljesen helyesen vannak definiálva, de az operátorbanírja (f, a); a fordító hibaüzenetet ad. Nevezetesen: a fordító jelenteni fogja, hogy a típus nem egyezik. Úgy tűnik, hogy a változók típusai a és f ugyanazok. A fordító szemszögéből azonban ez nem így van. Két különböző struktúrát írtunk le, és a fordító joggal feltételezi, hogy ezek eltérőek lehetnek, és nem veszi a fáradtságot annak ellenőrzésére, hogy azonosak -e.

Ezt a problémát a következőképpen oldják meg:

Program példa;

Crt -t használ;

típus

R = rekord

S: húr;

I: egész szám;

Vége;

A: r;

F: r fájl;

kezdődik

A.s: = "fsfsfsf";

A.i: = 8;

Írja be (f, a);

vége.

Ez a program ugyanazt a feladatot hajtja végre, mint az előző, de itt nincs probléma a fordító számára.

A fájl lehet egy összetett szerkezet része. Például egy fájl tömb tökéletesen érvényes:

f: tömb fájl egész számból;

A fájl a rekord része lehet:

Program példa;

Rekord

S: húr;

F: egész fájl;

Vége;

kezdődik

Hozzárendelés (a.f, "file.dat"); rewrite (a.f);

vége.

Ez a példa tömbfájlt nyit meg. Vagyis a fájl minden rekordja 10 egész számból álló tömb. Ezenkívül nem tudjuk meghatározni mind a tíz elem értékét, a fájl továbbra is tízet fog tartalmazni, amint azt a tömb definíciója megadja.

Ugyanaz a fizikai fájl megnyitható egy fájltípusként, majd ugyanaz, mint egy másik típusú fájl:

Program példa; Crt;

S: húr;

I: egész szám;

F: karakterlánc fájl;

D: egész fájl;

kezdődik

Clrscr;

Hozzárendelés (f, "file.dat"); újraírás (f);

S: = "gdgdgjagdjasg";

I esetén: = 1-10 írjon (f, s);

Bezárás (f);

Hozzárendelés (d, "file.dat"); reset (d);

Bár nem eof (d)

Kezdődik

Olvasás (d, i); írás (i, "");

Vége;

vége.

Ebben a példában a file.dat nevű fájlt karakterláncfájlként nyitják meg, és megtöltik valamilyen tartalommal, majd bezárják és újra megnyitják, de ezúttal számfájlként. Az ilyen műveletek meglehetősen legálisak a Pascal nyelv számára, ez annak a ténynek a következménye, hogy fizikai szinten a fájl típusa semmilyen módon nincs rögzítve.

Következtetés: Fájl - ez egy olyan struktúra, amely lehetővé teszi nagy mennyiségű információ tárolását. Az a tény, hogy a fájltípusok közönséges nyelvi adattípusok, növeli a feldolgozás kényelmét. Az adatok fájlokban való tárolásának egyetlen hátránya a viszonylag alacsony hozzáférési sebesség.

3. Házi feladat.

Tekintse át a vizsgált anyagot. Ismerje meg az alapvető fogalmakat: adatfájl; fájl; algoritmus a fájlokkal való munkához; fájlokkal működő eljárások és funkciók; felvétel.

4. Összefoglalás

Az osztályban jól teljesítő diákok osztályozása.


Adat fájlok

A programok fejlesztése során gyakran szükséges a tárolt információk tárolása és feldolgozása. Ezek az információk nagyon sokfélék lehetnek: kezdeti adatok a problémák megoldásához, számítási eredmények, listák stb. Adatbázisfájlok használhatók ilyen információk tárolására. Az adatfájlok szövegesek. A lemezeken vagy más gépi adathordozón található adatok szervezésétől függően a szöveges fájlok fájlokkal vannak felosztva szekvenciális hozzáférés, közvetlen hozzáférésű fájlokés bináris fájlok.

Szekvenciális hozzáférésű szöveges fájlok (soros hozzáférésű fájlok) nincs semmilyen szerkezetük. Ezen fájlok szerkezetét maga az olvasó határozza meg. A szekvenciális szöveges fájlokban minden sor kettővel végződik speciális karakterek: a sor vége és a kocsi visszatérése, amelyek a billentyűzeten az Enter billentyű megnyomásakor kerülnek be a programszövegbe. Ezért a szekvenciális szövegfájlok feldolgozásának egyik legegyszerűbb módja az, hogy soronként olvassa el. Könnyű szekvenciális szöveges fájlokat is létrehozni. Bárki létrehozhatja szöveg szerkesztő... A szekvenciális hozzáférési fájlban lévő adatokat soronként bájt byte -ban írják. A kívánt információk elemzéséhez és kiválasztásához a fájlt teljesen el kell olvasni. Ez növeli a hangerőszükségletet. véletlen hozzáférésű memóriaés csökkenti a program végrehajtásának sebességét.

Közvetlen hozzáférésű szöveges fájlok (közvetlen hozzáférésű fájlok) szöveg vagy strukturált bináris fájlok olvasására és írására szolgálnak, rögzített hosszúságú rekordokkal. Lehetővé teszik az adatok írását és visszakeresését egy fájlból rekordszám szerint. Ez csökkenti az adatok megkereséséhez és visszakereséséhez szükséges időt. Ez azonban a lemezterület nem hatékony kihasználásához vezet, mivel a rekord minden mezőjének hosszát előre meg kell állapítani.

Bináris fájlok(bináris) tetszőlegesen strukturált adatok olvasására és írására szolgál. A bináris fájlok szigorúan véve nem új fájltípusok, hanem a bármilyen típusú fájlok kezelésének egyik módja. A bináris fájlokkal való munka módszerei lehetővé teszik a fájl bármely bájtjának olvasását és módosítását.

Az adatfájlok kezeléséhez a fájl megnyitásához, a fájl bezárásához, az adatok írásához és olvasásához szükséges parancsokat, valamint számos olyan funkciót használnak, amelyek megkönnyítik a fájlokkal való munkát. Mindezek a parancsok hagyományosak az alapnyelv minden verziójában.

Fájlok megnyitása

A fájlok megnyitásához használja a parancsot Nyisd ki .

Nyissa meg a „file_spec” fájlt (fájl típusa)

Mint [#] N.



Választási lehetőség " File_spec ”, Mint tudod, lehetővé teszi a meghajtó, az útvonal, a név és a fájlnév kiterjesztésének megadását. Például: R: /Prognoz/Ucheb/prognoz1.dan. Ahhoz, hogy a fájl számítógépeken és az MS DOS operációs rendszerrel használható legyen, a fájlnevet és annak kiterjesztését az MS DOS operációs rendszer szabályai szerint kell kialakítani. Vagyis csak latin karakterek és számok használhatók a fájlnévben és a fájlnévkiterjesztésben, a fájlnévnek betűvel kell kezdődnie, a fájlnév hossza nem haladhatja meg a 8 karaktert, a fájlnévkiterjesztésnek pedig négy karakterből kell állnia, időszakot is beleértve. A fájlnévben nem használhatók pontok és szóközök. A fájl specifikáció idézőjelbe van foglalva.

választási lehetőség For meghatározza a fájl típusát. A fájltípus a szerkezetét és a használat módját jelzi, és a következő értékeket veheti fel:

Bemenet- szekvenciális hozzáférésű fájl, olvasásra nyitva;

Kimenet- szekvenciális hozzáférésű fájl, írásra nyitva;

Mellékel- szekvenciális hozzáférési fájl, amely adatok hozzáadásához nyílik meg;

Bynary- adatok írására és olvasására megnyitott bináris fájl:

Véletlen- a közvetlen hozzáférésű fájl nyitva áll az adatok írására és olvasására.

választási lehetőség Hozzáférés meghatározza az adatokhoz való hozzáférési jogokat, amikor számítógépes hálózatokban dolgozik. Három jelentése lehet:

Olvas- szabad fájlból adatokat olvasni;

Ír- adatfájl írása a fájlba megengedett;

Ír olvas- az adatok olvasása és írása megengedett. Ez a hozzáférési mód alapértelmezés szerint használatos.

választási lehetőség Zár . Mivel az olvasási-írási módot általában olyan fájlokkal való együttműködésre tervezték, amelyeket sok felhasználó vagy alkalmazás használhat, ezért megosztáskor biztosítani kell az adatok integritását. Ebből a célból a blokkoló paramétert használják, amely a következő értékeket veheti fel:

Megosztva- a fájlt minden folyamat felhasználhatja adatok olvasására és írására;

LockRead- olvasási tilalom. Más folyamat nem tudja kiolvasni az adatokat a fájlból. Ez a paraméter beállítható, ha be van állítva Ebben a pillanatban más folyamat nem hajtja végre az olvasási műveletet.

LockWrite- a rögzítés tilalma. Más folyamat nem írhat adatokat a fájlba. Ez a paraméter beállítható, ha más folyamat nem hajt végre írási műveletet.

LockReadWrite- az írás, az adatok olvasásának tilalma. Ez a paraméter akkor állítható be, ha más folyamat nem hajt végre írási, olvasási műveletet.

választási lehetőség Mint - meghatározza a csatorna számát. Jel # elhagyható. A csatornaszám 1 és 255 közötti értékeket vehet fel. Az egyidejűleg nyitott csatornák számát a Config.sys fájlban megadott operációs rendszer korlátai határozzák meg.

választási lehetőség Len - csak közvetlen hozzáférésű fájlokban használható. A rekord hosszát állítja be bájtokban.

Nál nél Nyítás vagy más szóval, inicializálás fájlokat, a következő műveleteket hajtják végre:

kapcsolat jön létre a fájl specifikációja és a program száma között. Ezért az ezzel a fájllal végzett minden későbbi művelet során a csatornaszámra mutat hivatkozás, nem pedig a fájl specifikációra;

az I / O utasítások végrehajtásához használt rendszer vagy szoftver puffer rögzítve van. A puffer használata csökkenti a programhoz való hozzáférést a lemezhez, következésképpen növeli az adatok írásának és olvasásának sebességét;

a paraméterek kezdeti értékei alakulnak ki, az úgynevezett fájlvezérlő blokkban.

Fájlok bezárása

A fájlok bezárásához használja a parancsot Bezárás ... Parancs szintaxisa:

Bezárás [#<номер канала> ]

A csatorna száma paraméterrel bezáró parancs bezárja a megadott csatornát. A Bezárás parancs paraméterek nélkül mindent bezár fájlok megnyitása... A Bezárás parancs törli a puffert, és utasítja az operációs rendszert a fájlkiosztási táblázat frissítésére.

Az adatok fájlba írására és az adatok fájlokból történő olvasására vonatkozó parancsok a fájltípustól függenek.

A számítógépen tárolt adatok fájlokban vannak tárolva. A fájl a szervezet fő szervezési egysége és az adatok számítógépben történő tárolása. A fájl fogalmának számos definíciója létezik, amelyek lényege a következő: Szöveges dokumentum, numerikus adatok, kódolt rajzok stb.), amelyek névvel rendelkeznek és külső memóriában vannak tárolva. A fájlnév két részből áll, ponttal elválasztva: az első rész maga a fájlnév, a második a kiterjesztése, amely meghatározza a típusát, vagyis azt, hogy mit tárolnak adott fájl(számítógépes program, grafikus adatok stb.). A fájlnevet a felhasználó rendeli hozzá (ha a felhasználó valamilyen okból nem rendel fájlnevet, akkor a számítógépes program a munka befejezésekor alapértelmezett nevet rendel hozzá), és a fájltípust a felhasználó vagy a Alkalmazás ( számítógépes program) automatikusan létrejön. asztal A 6.2 a csillaggal jelölt egyes fájltípusokat és a hozzájuk tartozó kiterjesztéseket mutatja lehetséges neveket fájlokat.

6.2. Táblázat

A fájlnév mellett létezik olyan "fájlformátum" is, amely meghatározza az információ tárolásának módját (adatstruktúrát) egy fájlban, és azt, hogy a fájl hogyan jelenik meg a képernyőn vagy nyomtatáskor. A fájlformátum határozza meg a fájlnevek helyesírásának szabályait, és függ a számítógépre telepített operációs rendszer (OS) által támogatott fájlrendszertől. Például az OS -ben MS DOS a fájlnév legfeljebb nyolc latin ábécé betűt tartalmazhat, és a kiterjesztés három latin betűből áll - primer.txt, prim.txt, priml.txt stb. ablakok a fájlnév legfeljebb 255 karakterből állhat, míg az orosz ábécé is használható - például album, jpg. sus, stb Ezek a szabályok az operációs rendszerben MS DOSés az OS család ablakok megtiltja a következő karakterek és szimbólumok használatát fájlok elnevezésekor: / \: *?< >|.

A fenti külső tárolóeszközök bármelyike ​​nagyszámú fájlt képes tárolni. Tárolásuk sorrendjét határozzák meg fájlrendszer amelyek sajátos fájlstruktúrával rendelkezhetnek. Minden fájlnévnek saját egyedi címe van, amely lehetővé teszi, hogy az MT szükség esetén külső memórián találjon kívánt fájlt majd olvassa be az adatokat a RAM -ba. Fájlok be operációs rendszer funkcionálisan vagy tematikailag könyvtárakká vagy mappákká egyesíthetők, amelyek viszont más könyvtárakba vagy mappákba is beilleszthetők, vagyis bonyolult fájlstruktúrával rendelkeznek.

A program két probléma megoldására használja a fájlok fogalmát:

  • a program eredményeinek mentése és más szoftvereszközök általi további felhasználása;
  • külső adatfájl használata a program bemeneti adatforrásaként.

A Pascal-ban a külső fájlokat az MS-DOS által támasztott követelmények alapján veszik figyelembe. Az MS-DOS-ban található fájl a lemez megnevezett területe, ahol az adatok tárolódnak, míg a fájlnévre vonatkozó követelményeknek szigorúan meg kell felelniük az MS-DOC követelményeinek (a megfelelő név legfeljebb 8 karakter, kiterjesztés-3 karakter, betűk) a latin ábécé első karakterének betűnek kell lennie) ...

A Pascalban minden külső fájl 3 funkcióval rendelkezik:

  • a külső fájlnak neve van, és ez lehetővé teszi a program számára, hogy egyszerre több adatgal dolgozzon;
  • az adatfájloknak azonos típusú összetevőket kell tartalmazniuk;
  • a külső fájl hossza nincs megadva, és bármilyen hosszúságú lehet.

Külső fájlok fájlváltozóval vannak társítva, amely helyettesíti a program fájlnevét. A Pascal-ban egy fájltípusú változó, vagy fájltípus a Típus szakaszban a 3 mód egyikén állítható be:

  • [név]: [típus] fájl;
  • [név]: Szöveg;
  • [név]: Fájl;

[név] - a fájlváltozó neve.

A következő típusú fájlokat különböztetjük meg a bejelentési módszer szerint:

  • gépelt fájlok (File of);
  • szöveges fájlok (szöveg);
  • gépelés nélküli fájlok.

A fájl fogalmát két oldalról is meg lehet tekinteni: az első oldal azt mondja, hogy a fájl egy elnevezett terület külső memória információt (adatot) tartalmazó. Ebben a fogalomban a fájlt fizikai fájlnak nevezik, ez a fájl fizikailag létezik a lemezen; a második oldal azt mondja, hogy egy fájl a sok adatstruktúra egyike, amelyeket a programozás során használnak. Ebben az értelemben egy fájlt logikai fájlnak neveznek, ilyen fájl logikai ábrázolásban létezik a program összeállításakor. Egy programban a fájl logikusan egy bizonyos típusú fájlváltozóként jelenik meg.

A fizikai fájl szerkezete ábrázolható a memória szabályos bájtos sorozataként egy adathordozón.

A logikai fájlstruktúra az, ahogyan a program felismeri a fájlt. Képletesen szólva a logikai fájl egy ablak (sablon), amellyel a fájl fizikai szerkezetét nézzük. A programozási nyelvekben egy ilyen ablak a fájl összetevőként használt adattípus.

A logikai szerkezetben egy külső fájl minden összetevője helyet foglal, amelyet az összetevő típusa határoz meg. Alapvetően az adatfájl logikai felépítése hasonló a tömb szerkezetéhez. A fájl és a tömb közötti különbség a következő: a memóriakiosztáskor az elemek száma rögzítve van a tömbhöz, és teljes mértékben benne van az OP -ban. A tömb elemek számozása a nyilatkozatban meghatározott határok szerint történik. A programban dolgozó fájl elemeinek száma változhat, ráadásul külső adathordozón található. A fájlelemek számozása - a szöveges fájlok kivételével - balról jobbra kezdődik, 0 -tól kezdődően. Az összetevők száma adott időpontban ismeretlen. De a fájl végén van egy EOF (End of File) karakter, amelyet vezérlő karakterként használnak a 26. ASCII kódból (Ctrl + z). Ezenkívül a program meg tudja határozni a fájl hosszát, és egyéb műveleteket hajthat végre szabványos eljárások és funkciók használatával.

A Pascal fájlok különleges fajtái a szöveges fájlok. Alapvetően szöveges fájl egyfajta gépelt fájlnak tekinthető. A szöveges fájlokban a fájl végén kívül az EoLn (End of Line) sor végét is használják. Az EoLn szolgáltatás a # 13 kódnak felel meg, amelyet az Enter billentyű megnyomásával állítanak elő. A szöveges fájl szerkezete a következőképpen ábrázolható:

A billentyűzet- és kijelzőkimenetet használó standard bemeneti és kimeneti fájlok szöveges fájlok. Bár a szövegfájl egyfajta Char, a szövegfájl és a szimbólumfájl között vannak különbségek:

  • szöveges fájlokban írás közben a numerikus adatok automatikusan karakterlánccá alakulnak, és az olvasás során a fordított átalakítás történik;
  • a szöveges fájlok nem rendelkeznek közvetlen hozzáféréssel, ami azt jelenti, hogy az adatok csak teljes egészében olvashatók (írhatók);
  • csak néhány szabványos adattípus képes szöveges fájlt olvasni és írni;
  • a szöveges fájl sorvégződésekkel rendelkezik;
  • szöveges fájlok olvasásához és írásához megengedett a ReadLn és WriteLn használata, amelyek más típusú adatokban tilosak.

Eljárások és funkciók a külső fájlokkal való munkavégzéshez

A fájlok programban való használatához deklarálnia kell a fájltípusnak megfelelő fájlváltozót, amely felváltja a program fájlnevét. Ahhoz, hogy egy program hozzáférhessen egy külső fájlhoz, külső fájlhoz kell kapcsolni.

Formátum: Hozzárendelés ([fájlváltozó], [fájlnév_vagy logikai_eszköznév]);

A fájlnévnek tartalmaznia kell a fájl teljes elérési útját, az aktuális könyvtárból kiindulva. Két eszközt használnak logikai eszközként: „Con”- monitor képernyő; „Prn”- egy nyomtató.

Átírni- új fájl létrehozása.

Formátum: Rewrite ([file_variable]);

Ez az eljárás üres lapot hoz létre az adathordozón, új fájl a fájlváltozóval korábban társított névvel. Az új fájl készen áll az információk fogadására, egy speciális változó pedig a fájl elejére mutat. Ha létezett ilyen nevű fájl, akkor törlődik.

Visszaállítás- a fájl eredeti állapotának beállítása.

Formátum: Visszaállítás ([file_variable]);

Az eljárás előkészíti a fájlváltozónévhez tartozó külső fájlt olvasásra. Ez a fájlmutatót a fájl elejére helyezi. A fájlt a Reset használatának idejére kell létrehozni.

Olvas (ReadLn) - olvasás fájlból.

Formátum: Olvasás ([file_variable], [input_list]);

A bejegyzéslistában szereplő változóneveknek azonos típusúaknak kell lenniük, mint a fájlváltozóval társított fájl összetevői. Az egyes változók értéke megegyezik a fájlkomponenssel, és minden érték elolvasása után a mutató a következő összetevőre lép. A Read és ReadLn eljárások használatához a fájlt először a Reset eljárással kell megnyitni. A ReadLn csak szöveges fájlokhoz használható, és amikor a következő összetevő elolvasása után használják, a mutató az első újsoros karakterre lép.

Ír (WriteLn) - fájlba írás.

Formátum: Write ([file_variable], [output_list]);

A kimeneti listából származó változók értéke fájlösszetevőként íródik a fájlváltozó fájlnevéhez. A fájlt az írás előtt az Újraírási eljárással kell létrehozni. A WriteLn a következő komponens írása után a mutatót egy új sor elejére helyezi.

Szöveges fájlokkal való munka során helyesen kell figyelni az Olvasás (Olvasás) és Írás (Írás) eljárások használatára. Adatok írásakor Írás - olvasás Olvasás, íráskor WriteLn - Olvasás olvasás.

Bezárás- a fájl bezárása.

Formátum: Bezárás ([file_variable]);

Az eljárás bezárja a fájlt, de a fájlváltozó társítása a korábban a Hozzárendelésben beállított fájlhoz megmarad. Mivel a fájl és a fájlváltozó közötti kapcsolat megnyitható íráshoz vagy olvasáshoz az Assign további használata nélkül.

Mellékel- elemek hozzáadása.

Formátum: Hozzáfűzés ([fájl_változó]);

Az eljárás megnyit egy meglévő fájlt, hogy adatokat adjon hozzá a fájl végéhez. Ha a fájl már nyitva volt, akkor az Append használatával bezárja és újra megnyitja a bejegyzést.

Törli- törli a fájlt a lemezről.

Formátum: Törlés ([file_variable]);

Törli a fájlváltozóval társított fájlt. Az eljárás használata előtt a fájlt be kell zárni Bezárás.

EoF funkció

Formátum: EoF ([fájl_változó]);

A logikai függvény igaz értéket ad vissza, ha a mutató a fájl végén van, és hamis, ha nem.

EoLn funkció

Formátum: EoLn ([fájl_változó]);

A logikai függvény igaz értéket ad vissza, ha a mutató a karakterlánc végén található, és hamis, ha nem.

A változókban és tömbökben található minden információ eltűnik a program végén. Ha a jövőben szükség lehet rá, akkor ezeket az információkat merevlemezre, hajlékonylemezre vagy más adathordozóra menti, és a program következő indításakor a külső adathordozóról tömbökbe vagy változókba tölti vissza. Az ilyen felvételt lemezre vagy más adathordozóra hívják adatfájl. Az adatfájlok mellett vannak futtatható fájlokat(programok gépi kódokban .exe vagy.com kiterjesztéssel). Bizonyos programozási nyelvek és rendszerek (beleértve a Pascal nyelvjárásokból származóakat - Borland Pascal és Delphi) lehetővé teszik egy ilyen fájl futtatását saját programjából. A Pascal ABC -nek nincs ilyen lehetősége.

A fájlok csoportosítva vannak (könyvtárak vagy mappák). Annak meghatározásához, hogy melyik fájllal dolgozzon, jelölje meg teljes név... Több részből áll, például:

A könyvtár, amelyben a programunk található, a működő (aktuális) könyvtár. Ez azt jelenti, hogy az ilyen könyvtárban található adatfájlok elérésekor nem kell megadnia az elérési utat.

Az adatfájl programban való használatához a VAR szakaszban van szükség leírni egy fájlváltozót(f / p), amely információkat tárol erről a fájlról (teljes név, hossz, létrehozás dátuma és ideje stb.). Ez a leírás más különböző típusok fájlokat. Például:


A tipikusnak minősített fájlokban minden adat azonos típusú (a leírásban meghatározott), valamint tömbök. Ezért a tömbök tartalmát általában ilyen fájlokban tárolják. Kényelmetlen a szöveg tárolása egy tipikus fájlban, mivel minden sornak azonos hosszúságúnak kell lennie. A szövegfájl különböző hosszúságú sorokkal ellátott szöveg tárolására szolgál. Egy sor elválasztásához egy ilyen fájlban minden sor az ENTER billentyűnek megfelelő karakterrel végződik. A karakterláncokon kívül számok is tárolhatók szöveges fájlban (de ez kevésbé gazdaságos, mint egy tipikus fájlban, ahol bináris kód, nem karakterről karakterre).

Nak nek írja be a fájl nevét a fájlváltozóba, a parancsot használják

hozzárendelés (f / p, 'teljes fájlnév');

Ebben a parancsban kihagyhatja a munkakönyvtárban található fájl elérési útját (ugyanazon a helyen, mint maga a program).

Annak érdekében, hogy a fájlváltozó megkapja a fájl összes többi információját, szüksége van rá nyisd ki az alábbi parancsok egyikével:

visszaállítás (f / p); - megnyit egy már létező fájlt, és a mutatót az elejére állítja (általában így nyitják meg a fájlt olvasásra, de írhat egy tipikus fájlba. A fájl adatai helyett írásra kerül sor).

hozzáfűzni (f / p); - megnyit egy létező fájlt, és a végére állítja a mutatót (információ hozzáadása a fájl vége után).

átírás (f / p); - új fájlt hoz létre (ha a fájl már létezik, akkor törlődik).

A fájlmutató tárolja a fájlban azt a helyet, ahonnan információkat olvashatunk (vagy írhatunk). Minden olvasási vagy írási művelet a mutatót a következő rekordra mozgatja.

Nak nek információt olvasni a fájlból egy változóba helyezve a következő parancsokat használja:

olvasás (f / p, változók listája); - olvas egy mintából és egy szöveges fájlból.

readln (f / n, változók listája); - szövegfájlból olvas.

Ha nem olvasható szövegfájlból egyetlen szó vagy számok, hanem az egész karakterlánc, akkor csak egy karakterlánc -változót használnak.

write (f / p, változók listája); - szabványos és szöveges fájlba ír.

writeln (f / p, változók listája); - ír egy szöveges fájlba sorcsatornával.

Fájlban való mozgáshoz (csak tipikus fájl!) Használja a seek parancsot (f / p, rekordszám); ... A fájl rekordjai nulláról vannak számozva. A hozzáadandó fájl végére érni új bejegyzés, ebben a parancsban számként a fájlméret (f / p) függvényt használják, amely meghatározza a fájl méretét (nem bájtban, hanem ilyen típusú rekordokban).

Ha ismeretlen hosszúságú fájlból olvas, olvasás előtt ellenőrizheti, hogy a fájl befejeződött -e, az eof (f / p) függvénnyel, amely igaz, ha a mutató az utolsó rekord után van. Például:


Miután befejezte a fájllal való munkát, meg kell tennie Bezárás bezár parancs (f / p); ... Ha ezt nem teszi meg, akkor a Pascal nem menti a fájl módosításait lemezre. De még akkor is, ha nem történt változás, ajánlott bezárni a fájlt. Ezt követően a fájlváltozó és a fájlpufferek (a memória azon területe, amelyet Pascal használ a memóriával való munkavégzés során) felszabadulnak.

Az átnevezés parancs (f / p, 'new_name') átnevezi a fájlváltozóhoz tartozó fájlt. A fájlt be kell zárni.

A törlés parancs (f / n) törli a fájlváltozóval társított fájlt. A fájlt be kell zárni.

A fájlműveletek nem mindig sikeresek. Ha például hajlékonylemezről próbál olvasni, amelyet elfelejtett behelyezni a meghajtóba, hibaüzenet jelenik meg, és a program összeomlik. Jobb megelőzni az ilyen hibákat. A FileExists ('név') függvény igaz értéket ad vissza, ha a lemezen van egy adott nevű (és elérési út) fájl, ellenkező esetben hamis értéket ad vissza. Ezt egy meglévő fájlhoz való hozzáférés megkísérlése előtt kell használni. Ha új fájlt kell létrehoznia, először a CanCreateFile ('név') függvényt használja. Ha a fájl neve vagy elérési útja helytelen, vagy nincs hely a lemezen, vagy egyéb okokból lehetetlen ilyen nevű fájlt létrehozni, akkor hamis értéket ad vissza.