Manipulálni a külső fájlok

A tömbök nem alkalmas a hosszú távú tárolás végén a munkaprogram az adatok elvesznek. Előfordul, hogy a számítások eredményeit a menteni kívánt a jövőben is. Ez használ a fájlok.

A fájl gyűjteménye hasonló adatokat, amelyek egy nevet, és a számítógép memóriájába (belső vagy Fortran RAM).

A fájl áll a rekordok. Record - egy egység közötti a program és a külső memória.

A bemeneti és kimeneti adatok lehet helyezni a program fájlokat.

A komponensek száma a fájl nem előre meghatározott. A kötet a tárolt adatok a külső tárolóeszköz korlátozott kapacitás

írásmutatóját vagy fájl alkatrészek fájl végére

Hozzászólások fájlok állnak írás és olvasás. Bármikor, a program csak az egyik eleme a fájl által mutatott mutató jelenlegi fájl (file pointer). Ez határozza meg a helyét az a fájl, ahol (amikor) olvasható (write) adatai szerint. A fájl pointer lehet elhelyezni a kiindulási pont (mielőtt az első adat) az aktuális rekord a végpontot (az utolsó bejegyzés után - „a fájl végén”)

A Fortran, két típusú fájlokat: külső és belső.

Belső fájl - ez egy olyan terület, memória, a megadott karakter változó. Ez tárolja (csak) a RAM-ban, és nyitott az alapértelmezett. Az adatok írása a belső fájl sokkal gyorsabb, mint egy külső fájlt. Belső fájlok segítségével konvertálni az adatokat az egyik típus a karakter (egy másik). Ezek nyitott alapértelmezés szerint. Belső fájlok csak szekvenciális hozzáférés. Az eszköz egy belső fájlnév húr. Ez egy karakter változó (a fájl tartalmaz egy rekordot, amelynek mérete megegyezik a mérete a változó), egy eleme egy karakter tömb vagy egy szimbólum tömb (egy ilyen fájl elemek sorozatát, amelyek mindegyike egy rekord a bejegyzések száma egyenlő a tömb elemeinek számát)

Nyomtatás *, st. A képernyőn: _____ 23,50000

Külső fájl - a fájlt tárolják a lemezen (a sorrend a bejegyzések a szállító), illetve a perifériák (billentyűzet, képernyő).

A munka egy külső fájlt, akkor meg kell nyitni (csatlakozik az I / O eszköz). Ha megnyitjuk, és hozzon létre a fájl mutatót van beállítva a fájl elején. Adatok írása és olvasása a fájlból automatikusan hatására a mutató mozgását, azaz a mozgatja a mutatót az elején a következő rekordot. Ha adat van írva, miután az utolsó komponens véget ért a fájl.

Annak megállapításához, a fájl végére a logikai függvény EOF. amely visszaadja .TRUE. ha a fájl végére ért, és .FALSE. másként nem rendelkezik.

A munka befejezése után vele, hogy be kell zárni a fájlt.

A FORTRAN hivatkozva adatfájlok zajlik egy csatornán keresztül (vagy eszköz). Ez logikus koncepció, azaz, csatorna készülék nem a szokásos értelemben, hanem képzeletbeli. Elvégzése előtt az input / output létrehozásához szükséges kapcsolat a fizikai fájl és egy eszköz, azaz a fájlt csatolni az eszköz (csatorna). Ustroystvooboznachaetsya azonosító és ez - egy csillaggal * vagy egész szám, skalár expresszió. A külső fájl - egy szám 1-32767 (2_147_483_640). A maximális értéke az eszköz száma függ a konkrét megvalósítástól.

Minden fájl megfelel egy logikai eszköz. Egy fizikai eszköz felelnek meg a különböző logikai eszközök.

Ahhoz, hogy az I / O eszközök szokásos fizikai eszközök lehetnek kapcsolva (billentyűzet és a képernyő). Képernyő és a billentyűzet Fortran biztosít hírcsatornák egyes számokat. A Fortran programok léteznek eszköz azonosítók *, 0, 5, 6, és alapértelmezés szerint az eszközökhöz *, 0, 5 csatolt billentyűzet, és eszközök *, 0, 6 - képernyő.

Minden piaci ezt - kijelzőn.

Ezek az eszközök lekapcsolódnak vége után a program. Ezek az eszközök csatlakoztathatók bármelyik fájlt.

Minden külső fájl neve. Meg kell felelnie a szabályoknak az operációs rendszer elnevezési: „c \ users \ A123 \ f1.txt” - egy leírás a külső fájlt, vagy ha az eszköz - fenntartott nevek, mint például a con, prn.

A külső fájl van csatolva egy I / O eszköz végrehajtásának eredményeképpen a nyilatkozat OPEN. Most a hozzáférést a külső fájlt végezzük eszköz számát, amelyhez kapcsolódik.

OPEN (egység = 2, file = 'c \ users \ A133 \ f1.txt)

A készülék nem csatlakozik több fájlt, és fordítva.

A fájl áll a rekordok. A „rekordot” meghatározása: „logikai rekord”. Hívásrögzítés egység közötti adatcsere a program és a külső memória.

két egész felírható különböző módon fájlokat:

Minden bejegyzés ugyanolyan típusú fájlt.

A Fortran, a következő típusú rekordok (attól függően, hogy az adatok bemutatása):

formázott - ők állnak a kód táblázat szimbólumok. Amikor bemeneti adatok alakítjuk a külső (szimbolikus) - a belső ábrázolása, és a származtatására - a belső a külső;

formázatlan (formázatlan), amelyek az adatokat egy belső gép képviselet, elsősorban tárolására közbenső eredményeket a számításokban.

Részletek bejegyzések pontban meghatározott (most azt mondja egy nyilatkozatában) openspetsifikatoramiform = „formázott” vagy forma = „unformated”

Record „A fájl végén„nem tartalmaz adatokat, és automatikusan beállítja, miután az utolsó fájl rekordot.

Külső fájlok különböztetünk meg:

módszer szerint az adatokhoz való hozzáférés;

a szerkezet (attól függően, hogy az adatok ábrázolása;)

Az eljárás szerint a hozzáférési (access módszer) adatok:

A hozzáférési módszer meghatározza a sorrendet, amely feldolgozza a fájlt.

Szekvenciális hozzáférés magában foglalja egymás olvasási adatai között kívánatos. A szekvenciális hozzáférés fájlokat csak az új adatokat hozzáadjuk a fájlt. Formázatlan szekvenciális fájlok nem szerkeszthetők közvetlenül. Bejegyzés a szekvenciális fájl hossza is különböző. Bejegyzés szerkesztése a szekvenciális fájl csak így: olvassa el az összes bejegyzést a tömbben, hogy a változás és írjon egy tömböt egy fájl vagy szerkesztéséhez használt ideiglenes kisegítő fájlt, hogy a szükséges változtatásokat, és akkor felülírhatták az átmeneti file az eredeti. Végén az ideiglenes fájlok automatikusan törlődnek.

Attól függően, hogy az adatok ábrázolása fájlokat lehet külső (más struktúrájú):

Az adatok bináris fájlok a bináris. Ezek a fájlok - nem jellemző a Fortran (nem minden verzió), és nem fogjuk figyelembe venni.

Így Fortran támogatja a két elérési módok, és három minta (formázott, formázatlan bináris). Ezért Fortran, a 6 típusú fájlokat. Csak azokat a közös fájlok:

Format szekvenciális (szöveg);

Általában a programban, amikor az I / O szervezet felvette a következő sorrendben szereplők:

Először is, a kezelő kinyitja a nyitott fájl (csatlakozik a készülékhez, és annak tulajdonságait meghatározott). Ezután végrehajtott műveleteket adatátvitel (olvasás, írás). Miután a végén a fájl, el van választva a készülék (aktát lezáró - szoros).

Amikor kiválasztja a fájl típusát is figyelembe kell venni a körülményeket az alábbiakban felsorolt. Ha szüksége van egy szemrevételezéssel az adatok, akkor használja a formátumú fájlokat. De a szöveges fájlokat lehet kerekítési hiba. Formázatlan fájlok mérete kisebb, mint a szöveges fájlokat. A formázatlan adatok fájlátvitel gyorsabb, mivel nincs adat átalakítás szükséges.

Végrehajtása előtt a fájl műveletet meg kell párosul (csatlakoztatva) a logikai eszköz. Más szóval, a fájlt meg kell nyitni. Ez a megállapítás megnyitja a fájlt, és a fájl mutatót van beállítva, hogy az első rekordot.

[, Form =<способ представления данных>]

[Recl =<целочисленное выражение>]

Előírást megjelenhetnek bármilyen sorrendben. Ha a készülék az első, csak adja meg a számát, csökkenti egységet. hozzáférési mód lehet állítani: access = „szekvenciális” - szekvenciális hozzáférés, a hozzáférés = „közvetlen” - közvetlen hozzáférést access = „append” - alkalmazható működés szekvenciális hozzáférés, nyitva hozzáadni fájlokat. Form = „formázott” vagy „formázatlan” határozza meg a módját bemutató adatokat.

Ha a hozzáférési mód nincs megadva, akkor az alapértelmezett fájl tekinthető következetes dostupaformatnym.

Pripryamom alapértelmezett hozzáférési módszert tartják, nem formátumú fájlba.

Open (20, file = 'text.dat') - formázott szekvenciális hozzáférés fájlt.

file- fájl nevét (fájl specifikáció), amely beállítható karakter konstans vagy írja be a karakter változó. Ha ez az opció ki van hagyva, a külső fájl átmenetinek tekintett, és a fájl nevét adja az alapértelmezett.

Iostat- egész változó, ami 0, ha nincs hiba, és egy pozitív érték, ha annak bármely része az üzemeltető hibát, és egy negatív szám, ha hiba történt.

err - a címkén szolgáltatók, amelyek a vezérlés átadódik ha hiba történt végrehajtása során a nyilatkozatot.

Recl- csak akkor kell használni, hogy közvetlenül hozzáférjenek a fájlokat (bájt a mérete rekord).

Állapoton állapotát jelzi: új (új), a jelenlegi (régi). ideiglenes (scratch), kivéve (folyamatosan vagy menteni) eltávolítása (törlése).

Ideiglenes fájlok mindig érvényes fájlt állapot törlése és a többiek menteni (zárás után a fájl mentésre kerül).

Amikor létrehoz egy fájlt mutat Status = „új”, bár az alap, ha nincs fájl, megnyitja ezzel az értékkel.

Minden input / output üzemeltetők, kivéve a bemeneti / kimeneti üzemeltetők egy szabványos rendszer eszköz (*, 5, 6) tartalmazhat vezérlő információban egy listát specifikáló.

Olvasd üzemben

Ez az operátor használt olvasni az adatokat egy fájlt, csatlakoztatott eszköz az egység =<номер устройства> a bejegyzésben meghatározott változók listáját. Az általános nézet az üzemeltető:

[, FMT =<способ представления данных>]

Meghatározót egység =<номер устройства>,file =<имя файла> korábban tárgyalt.

Fmt- formátumleíró, amelyet be lehet állítani, vagy a címke formában, illetve karakteres kifejezés megadásával a formátumot. * Ha van, az azt jelenti, amivel egy lista vezérlés (csak szöveges fájlok, szekvenciális hozzáférés) formátumot. Ez specifikátor javallt csak formázott rekordokat. Érdekességek erre fájlt megadó kell hagyni.

Végi címke rendszer, amely a vezérlés átadódik, amikor a rekordot „a fájl végén”.

Err- címke nyilatkozat arról, hogy megkapja az ellenőrző ha egy I / O hiba történt.

Iostat- egész változó, értéke 0, ha nincs hiba, és egy pozitív érték, ha annak bármely része az üzemeltető hibát, és egy negatív szám, ha a helyzet állt fájl lovakat.

Felterjesztették egész kifejezés, de használják, hogy közvetlenül hozzáférjenek a fájlokat, és meghatározza a száma olvasható feljegyzések.

Olvassa (20 *) x - szól a szabad formátumú (a vezérlési lista) a fájl, amely kapcsolódik a csatorna 20. Az x változó.