online kép - Fájl  tubefájl feltöltés file feltöltés - adja hozzá a fájlokat onlinefedezze fel a legújabb online dokumentumokKapcsolat
  
 

Letöltheto dokumentumok, programok, törvények, tervezetek, javaslatok, egyéb hasznos információk, receptek - Fájl kiterjesztések - fajltube.com

Online dokumentumok - kep
  

Fajl fogalma, fajlnevek

számítógépes



felso sarok

egyéb tételek

jobb felso sarok
 
Prezentaciós eszközök
Sémakezelés és tarolasi struktúrak hierarchikus adatbazisokban
Halózatok kapcsolastechnikaja
Böngészők (browser-ek)
Halózat hardver eszközei
A DOS operaciós rendszer
PLC-K KIVÁLASZTÁSA, BEÜZEMELÉSE, ÜZEMELTETÉSE
Kapcsolódas az internethez
Szamrendszerek
Memóriagazdalkodas
 
bal also sarok   jobb also sarok

Fájl fogalma, fájlnevek

A számítógépen lévő információtárolási egysége a fájl (file). Egy fájl tartalma a gép szempontjából vagy adat, vagy program, amely a processzor által végrehajtható utasításokat tartalmaz: néha bináris fájlnak is hívják. A fájlban tárolt adat tetszőleges, lehet szöveg, grafikus kép, hang stb. Az adatok formájára nézve nincs előírás, a gyakorlatban nagyon sokféle formátum létezik. A fájlt minden operációs rendszer használja, konkrét megjelenése azonban már az operációs rendszertől függ.

A fájlrendszer az az általános struktúra, amely alapján az operációs rendszer elnevezi, tárolja és rendszerezi a fájlokat. A Windows 2000 három fájlrendszert támogat: FAT, FAT32 és NTFS. A fájlrendszer a Windows 2000 telepítésekor, meglévő kötet formázásakor, vagy új merevlemez telepítésekor választható ki. A FAT fájlrendszer (2 GB tárolókapacitásig), és annak továbbfejlesztett verziója a FAT32, amely a 2 GB-nál nagyobb (512 MB és 2 TB közötti nagyságú) merevlemez-meghajtókhoz javasolt, a korábbi Windows verziók és a DOS által használt fájlrendszer. Ha a számítógépünkön a Windows 2000 mellett MS-DOS, Windows 3.1, Windows 95, vagy Windows 98 is telepítve van, azaz kettős betöltésű konfigurációt használunk, célszerűbb a FAT vagy a FAT32 használata. Az NTFS fájlrendszer a Windows NT, 2000 és XP operációs rendszerekhez ajánlott fájlrendszer: a FAT fájlrendszerek ilyen irányú hiányosságaival szemben alkalmas biztonsági beállítások tárolására (hozzáférés-vezérlés), tömörítésre, nagyméretű merevlemezek kezelésére (2 terabyte-ig), valamint Windows 2000-ben és XP-ben adatok titkosítására.

Fájljellemzők

A Microsoft operációs rendszerekben a fájl a következő jellemzőkkel rendelkezik:

fájlnév:

DOS: legalább 1, maximum 8 betű szóköz nélkül
Windows 95...2000: legalább 1, max. 255 betű, szóköz és ékezet megengedett

fájlkiterjesztés:

nem kötelező; DOS-ban maximum 3 betű.
a végrehajtható fájlokat .COM, .EXE és .BAT kiterjesztés jelöli;
szövegfájlok: .TXT, .DOC, .WRI, stb.
adatfájlok: .DAT, .LST, .DBF, .MDB, .XLS, stb.
képfájlok: .BMP, .GIF, .PNG, .JPG, .WMF, .PCX, .TIF, .WI, .AI, stb.
tömörített fájlok: .ZIP, .RAR, .ARJ, .LHA, .ACE, .TGZ, stb.
hangfájlok: .WAV, .AU, .AIFF, .OGG, .MP3, stb.
videó fájlok: .AVI, .MP 949j91j G, .MOV, stb.

fájlméret:

a fájl mérete bájtban.

dátum:

A fájl létrehozásának vagy utolsó módosításának dátuma.

idő:

A fájl létrehozásának vagy utolsó módosításának ideje.

fájlattribútumok:

A fájl használatára vonatkozó jelzések, amelyek a következők lehetnek:

A (archive)

archív fájl

R (read only)

csak olvasható fájl

H (hidden)

rejtett fájl

S (system)

az operációs rendszerhez tartozó fájl

Ha a fájl vagy könyvtár NTFS fájlrendszert használó meghajtón található, további beállításokat is elvégezhetünk:

  • lehetőségünk van engedélyek kiadására: szabályozhatjuk, hogy melyik felhasználó és/vagy csoport milyen jogosultságokkal rendelkezzék az adott objektum felett
  • helymegtakarítás céljából automatikus ki- és betömörítést kérhetünk
  • titkosítás használatával mások számára hozzáférhetetlenné tehetjük fájljainkat (tömörített objektumokra nem alkalmazható)
  • a fájlok közötti gyorsabb keresés céljából indexet készíttethetünk

Könyvtárak és alkönyvtárak használata

Gyökér (root): helyi vagy hálózati meghajtó, ill. annak betűjele, főkönyvtár

a:\, b:\

floppy meghajtó

c:\ d:\ e:\ stb.

hard diszk(ek), hard diszk partíciók, CD-ROM meghajtó(k)

z:\

hálózati meghajtók (általában az ábécé végétől induló jelzéssel)

Könyvtár, mappa (directory): névvel ellátott fájlcsoport
A merevlemezek nagy tárolókapacitása miatt a fájlok logikus rendszerezése szükséges
Elnevezés: a fájlnevekhez hasonló elv szerint, a tartalomra utalva.
A könyvtárak egymásba ágyazhatóak: alkönyvtárak

elérési út (path): egy fájl pontos helye a főkönyvtárhoz viszonyítva. Példa:
c:\windows\fonts\symbols\musical

Windows 2000 eszközök

Adatszerkezet és fájlkezelés

Ha áttekintjük a Windows rendszer által használt adatszerkezet felépítését, láthatjuk, hogy a számítógépeknél általában, és a DOS/Windows korábbi verzióiból megszokott fa struktúra szerinti adattárolás nem változott, mindössze kibővült néhány elemmel, amelyek a rendszer áttekinthetőségét és használhatóságát könnyítik meg. Az adatszerkezet kiindulópontja az Asztal. Ebből nyílnak a Sajátgép, Hálózatok és Lomtár logikai mappái. Az Asztal mappában található objektumok természetesen a munkaasztalról is elérhetőek, de megjelennek a fájlkezelésre szolgáló eszközökben is.

A logikai mappák fogalma alatt azt értjük, hogy ezek a mappák nem hagyományos mappák, azaz nem arra valók, hogy fájlokat vagy további mappákat helyezzünk el bennük, hanem viselkedésük, kezelésük módja miatt nevezzük így.

Sajátgép
A Sajátgép logikai mappa tartalmazza a saját (lokális) helyi gépünk erőforrásait, úgymint

  • lokális háttértárolóink meghajtóit (floppy lemez, merevlemez, CD-ROM meghajtókat, illetve a helyi hálózat által nyújtott hálózati meghajtókat)
  • a Nyomtatók mappát
  • és saját gépünk beállításait tartalmazó Vezérlőpult logikai mappát.

Tekintsük át a Sajátgép tartalmát. A megjelenő listában az aktuális mappa tartalmát láthatjuk. A megjelenő ikonok az almappákat és fájlokat jelölik. A belső mappák jelölése: egy sárga mappa; a fájlokat típusuk szerint más-más ikonok jelölnek. Azt, hogy egy mappa tartalmaz-e belső mappákat vagy fájlokat, úgy állapíthatjuk meg, ha az ikonjára vagy nevére duplán kattintva megnyitjuk azt.
Eszköztárak:
A menüsor alatt elhelyezkedő terület, egy vagy több sorban elhelyezkedő, a munkavégzést megkönnyítő ikonsor.
A Cím eszköztár legördülő menüben tartalmazza az elérhető meghajtók és logikai mappák listáját. Ha a fájlrendszer bonyolultsága miatt eltévednénk, itt mindig visszaléphetünk a gyökérkönyvtárainkhoz. A Szokásos eszköztár tartalmazza a fájlrendszerben való navigálás és műveletek gombjait. Az aktuális mappából a magasabb szintre visszalépni az "Egy szinttel fel" ikonra kattintva lehet.


A Sajátgép és a belőle nyíló objektumok tartalmát több nézetben tekinthetjük meg, amit az eszköztáron állíthatunk be.
A Nagy ikonok nézet a fájlok és mappák nevét és ikonjait jeleníti meg. A Kis ikonok nézetben a mappa- és fájlnevek egymás mellett jelennek meg. Ebben a nézetben a sorbarendezés (pl. ábécérendben) balról jobbra halad, így alakítva ki az ablakban megjelenő oszlopokat. A Lista nézet az iménti adatokat oszlopokba rendezve jeleníti meg. A legtöbb esetben ez a legpraktikusabb nézet. A Részletek nézet a fájlok és mappák kicsinyített ikonjain és nevén kívül tartalmazza az adott adattípus leírását, a fájl méretét, és az utolsó módosítás idejét.
Amennyiben a lista valamelyik oszlopa nem elég széles, az oszlopfejléceket elválasztó vonal húzásával állíthatjuk megfelelő szélességűre. Ha az elválasztó vonalra kettőt kattintunk, az oszlop szélessége automatikusan a legszélesebb bejegyzés hosszához igazodik.
Az oszlopfejlécre kattintva sorba is rendezhetjük az objektumokat (ábécérend, típus, méret, vagy az utolsó módosítás dátuma szerint). Újbóli kattintással válthatunk a növekvő és csökkenő rendezés között.
Az ikonok elrendezését és megjelenítését a Nézet menüből is szabályozhatjuk (Nézet - Ikonok elrendezése, ill. Nézet - Nagy ikonok, Kis ikonok, Lista, Részletek) Ugyanerre az eredményre jutunk, ha az egér jobb gombjával az ablak területén kattintunk, majd a felbukkanó helyi menüből választjuk ki a megfelelő parancsot.
Az eszköztárakat testre is szabhatjuk az eszköztár területén az egér jobb gombjával kattintva, majd az alábbi lehetőségek közüli választással: Szokásos gombok, Címsáv, Hivatkozások, Rádió, Testreszabás.

Érdemes megjegyezni: a legtöbb művelet - használjuk akár a Sajátgép ablakot, a Windows Intézőt, vagy a legtöbb felhasználói programot - több módon is elvégezhető: 1.Menü segítségével. A programjainkban a rendelkezésre álló parancsokat logikusan felépített menüből választhatjuk ki. 2.Eszköztárról. A leggyakrabban használt parancsok ikonjai a menüsor alatti eszköztáron megtalálhatóak (pl. másolás, kivágás, beillesztés, nyomtatás, stb.) 3.Helyi menüvel. Az egér jobb gombjának lenyomásával az aktív objektumra vonatkozó, leggyakrabban használt parancsok listáját hívhatjuk elő. 4.Billentyűkombinációval. A gyakorlott felhasználók munkájának meggyorsítására szolgálnak a billentyűkombinációval előhívható parancsok, pl. másolás, beillesztés, nyomtatás, stb.

Lomtár


Az Asztalon található Lomtárba kerülnek alapértelmezés szerint a lokális gép merevlemezéről törölt fájljaink és mappáink. Ha ezeket a fájlokat később valóban szükségtelennek találjuk, innen törölhetjük azokat, illetve a tévedésből törölt állományokat innen állíthatjuk vissza eredeti állapotukba. (Fájl menü - Lomtár ürítése, ill. Fájl menü - Előző méret, Fájl menü - Törlés) A Lomtár tartalmát többi mappánkhoz hasonlóan kezelhetjük, onnan fájlokat törölhetünk, másolhatunk, stb.

Érdemes tudni, hogy

  1. A Lomtárba kerülő "törölt" fájlok valójában ugyanannyi helyet foglalnak el a háttértárolón, mintha le sem töröltük volna, így a valóban törölni kívánt fájlokat rögtön el lehet távolítani a Lomtárból is.
  2. A floppy lemezekről törölt állományok nem kerülnek be a Lomtárba, hanem azonnal megsemmisülnek.
  3. A Windows a törlési folyamat megkezdése előtt rákérdez, valóban törölni kívánunk-e. A Lomtár ikonra az egér jobb gombjával kattintva a Tulajdonságok paranccsal állíthatjuk be a Lomtár viselkedését: kívánjuk-e a törlési jóváhagyás megjelenítését, mekkora lemezterületet szánunk a Lomtárba átkerülő fájlokra, illetve kívánjuk-e egyáltalán a Lomtárban ideiglenesen megtartani őket.

Ha egy állományt a merevlemezünkről biztosan törölni kívánunk, a SHIFT+DEL billentyűkombinációval törölve nem kerülnek a Lomtárba, hanem azonnal megsemmisülnek.

Fájlműveletek Dos-banWindows Intéző

A Windows Intéző a fájl- és mappakezelést megkönnyítő segédprogram. Felépítését tekintve hasonlít a korábbi Windows verziók fájlkezelőihez: kettéosztott ablakában baloldalt a háttértároló(k) fa struktúrába rendezett tartalmát, jobboldalt a kiválasztott mappa tartalmát láthatjuk.
Indítása: a Start menü Programok, Kellékek csoportjából, vagy az asztalon a Sajátgép ikonra a SHIFT billentyű lenyomásával egy időben történő kétszeres kattintással.

A Windows Intéző megjeleníti a számítógépen található fájlok, mappák és meghajtók hierarchikus felépítését. Megjeleníti a számítógépen meghajtó-betűjellel rendelkező hálózati meghajtókat is. Megtekinthető a Hálózati helyek mappa is, amely megjeleníti a helyi hálózathoz csatlakozó számítógépeket. A Windows Intéző segítségével másolhatók, áthelyezhetők, átnevezhetők és kereshetők a fájlok és mappák. Például megnyitható a másolni vagy áthelyezni kívánt mappa vagy fájl, és másik mappába vagy akár másik meghajtóra húzható át.

A helyi meghajtókon a Windows telepítésével a merevlemezen létrejön egy jellemző adatszerkezet, azonban ez a szerkezet nem állandó vagy rögzített, a felhasználó tetszése szerint hozhat létre új mappákat, fájlokat; sok esetben a felhasználónak kell létrehoznia és kezelnie az általa készített dokumentumok tárolására szolgáló könyvtárszerkezetet is. A C meghajtón általában megtalálható fa struktúra a következő mappákat tartalmazza:

  • Documents and Settings: ide kerülnek a számítógépet használók egyéni beállításait és (ha más helyet nem adunk meg) felhasználói programokkal készített dokumentumaikat őrző saját mappák.
  • Windows, Winnt: Ez a mappa és belső mappái tartalmazzák magát a Windows rendszert.
  • Program Files: A rendszerre telepített felhasználói programok gyűjtőhelye
  • Recycler: A Lomtár részére fenntartott rendszermappa.

Ha egy mappa további belső mappákat tartalmaz, a bal oldali panelen a mappa előtt álló + jelre kattintva bonthatjuk ki azt. Ugyanezt az eredményt kapjuk, ha a jobb panelen a belső mappák egyikére kettőt kattintunk. Ekkor a kiválasztott mappa tartalma is láthatóvá válik.

Új mappák létrehozása
Válasszuk ki azt a mappát, amelyen belül szeretnénk létrehozni az újat. Itt a kétféleképpen hozhatunk létre új mappát:

  • Fájl menü - Új - Mappa
  • Jobb egérgomb - Új - Mappa

Ezután megjelenik az új mappa. A rendszer által felkínált név helyére gépeljük be a kívánt könyvtárnevet, majd üssük le az ENTER billentyűt. Új mappák létrehozásához ismételjük meg a műveletet. A mappák elnevezésére maximum 255 karaktert használhatunk, akár ékezeteket, szóközt is. Nem használhatjuk azonban a következő karaktereket: \ / ? * " | < >

Új fájlok létrehozása
Ha egy új fájlt szeretnénk létrehozni, válasszuk ki azt a mappát, amelyben tárolni kívánjuk.

  • Fájl menü - Új - fájltípus kiválasztása
  • Jobb egérgomb - Új - fájltípus kiválasztása

A fájltípus kiválasztása után az új fájl megjelenik a kívánt helyen. Ezután nevezzük el. Az így létrehozott fájl azonban még üres. Kétszeri kattintással megnyithatjuk és szerkeszthetjük.
Ezzel a módszerrel csak a leggyakrabban használt fájltípusokat hozhatjuk létre. Más fájlokat, pl. Office dokumentumokat kényelmesebb a megfelelő alkalmazással (pl. szövegszerkesztő program) létrehozni.

Vágólap


A vágólap a Windows által biztosított elkülönített memóriaterület. Használata: egy kijelölt objektumot (szöveg, szövegrész, kép, hang, fájl, mappa, stb.) ide másolva bármely Windows-os alkalmazásba beilleszthetjük, egymás után többször is. Egyszerre azonban csak egy objektum kerülhet a vágólapra.
A vágólap tehát az adatok átvitelére használható egy programon belül, de programok közt is.
A Windows egyik hasznos szolgáltatása, hogy a Vágólapra kép formájában ki tudjuk tenni a teljes képernyő (PrintScrn) vagy az aktív ablak (ALT+PrintScrn) tartalmát, hogy aztán dokumentumainkba beilleszthessük, vagy egy rajzolóprogrammal módosítsuk. E jegyzet képeinek többsége is ezzel a módszerrel készült.

Fájlok és mappák másolása
Másoláskor a következőképpen járunk el: jelöljük ki a másolandó fájlt vagy mappát egy kattintással. Az objektum vágólapra való másolásához használhatjuk

  • Az eszköztár másolás ikonját
  • A Szerkesztés menü Másolás parancsát
  • Az egér jobb gombjával kattintva a helyi menü másolás parancsát
  • vagy a CTRL+C billentyűkombinációt.

Ezután nyissuk ki azt a mappát, ahová az objektumot másolni kívánjuk. A beillesztéshez használjuk

  • Az eszköztár beillesztés ikonját
  • A Szerkesztés menü Beillesztés parancsát
  • Az egér jobb gombjával kattintva a helyi menü beillesztés parancsát
  • vagy a CTRL+V billentyűkombinációt.

Fájlok és mappák áthelyezése
Előfordulhat, hogy adataink tévedésből rossz helyre kerültek, vagy fájljainkat szeretnénk más mappákba úgy átmozgatni, hogy eredeti helyükön ne maradjon róluk másolat. Fájlok vagy mappák áthelyezésekor a következőképpen járunk el: jelöljük ki az áthelyezendő fájlt vagy mappát egy kattintással. Az objektum vágólapra való másolásához használhatjuk

  • Az eszköztár kivágás ikonját
  • A Szerkesztés menü Kivágás parancsát
  • Az egér jobb gombjával kattintva a helyi menü kivágás parancsát
  • vagy a CTRL+X billentyűkombinációt.

Ezután nyissuk ki azt a mappát, ahová az objektumot átmozgatni kívánjuk. A beillesztéshez használjuk

  • Az eszköztár beillesztés ikonját
  • A Szerkesztés menü Beillesztés parancsát
  • Az egér jobb gombjával kattintva a helyi menü beillesztés parancsát
  • vagy a CTRL+V billentyűkombinációt.

Meghajtók, mappák, fájlok tulajdonságai
Egy fájl, mappa vagy meghajtó tulajdonságait akkor is leolvashatjuk, ha éppen nem vagyunk Részetek nézetben. Ezt többféleképp tehetjük meg: válasszuk ki az objektumot egyszeres kattintással, majd

  • kattintsunk az eszköztár Tulajdonságok gombjára
  • használjuk a Fájl - Tulajdonságok parancsot
  • üssük le az ALT+ENTER billentyűkombinációt
  • az egér jobb gombjával kattintva válasszuk a helyi menüből a Tulajdonságok parancsot.

Meghajtó tulajdonságai: címke, felhasznált és szabad terület, kapacitás. Az eszközök fülre kattintva a lemez fizikai karbantartását végző segédprogramokat érhetjük el. A Megosztás fülre kattintva elérhetővé tehetjük a kiválasztott elemet (meghajtó, mappa) helyi hálózatunkon keresztül más felhasználók részére is.

Mappa és fájl tulajdonságai: Típus, hely, méret, létrehozás, utolsó hozzáférés, módosítás dátuma, attribútumok.

Fájlok és mappák átnevezése
Ha egy fájlt vagy mappát át kívánunk nevezni, egyszeres kattintással válasszuk ki. Ezután több lehetőségünk van:

  • A Fájl menüből válasszuk az Átnevezés parancsot
  • Az egér jobb gombjával kattintva válasszuk a helyi menüből az Átnevezés parancsot
  • Kattintsunk újra (nem dupla kattintás!)

Ezután írjuk be az új nevet. A művelet (pl. ha véletlenül rossz mappát jelöltünk ki, vagy a dupla kattintás sikerült túl lassúra) az ESC billentyűvel visszaléphetünk.

Fájlok és mappák törlése
A kijelölt fájl vagy mappa törlésére több eszközünk van, törölhetjük:

  • A DEL billentyű használatával
  • Az eszköztár Törlés gombjára kattintva.
  • A Fájl menü Törlés parancsával
  • Az egér jobb gombjával kattintva a helyi menü Törlés parancsával

Húzzuk a kiválasztott elemet az Asztalon található (és az Intéző bal oldali paneljében is elérhető) Lomtár ikonra.

A legutolsó művelet visszavonása
A fent felsorolt műveleteket lehetőségünk van visszavonni, ha tévedésből hajtottuk végre őket: a CTRL+Z billentyűkombinációval, a Szerkesztés menü Visszavonás parancsával, vagy az eszköztár Visszavonás ikonjára kattintva.

Több fájl vagy mappa kijelölése
Egy-egy művelet több fájlt és/vagy mappát is érinthet. Ebben az esetben célszerű ezeket az elemeket egyszerre kijelölni és a műveletet csak egyszer elvégezni. Az aktív mappában kijelölést több módon végezhetünk:

  • Összefüggő tartományt, egymással szomszédos elemeket kijelölhetünk a SHIFT billentyű nyomva tartása mellett, az egérrel az első és az utolsó elemet kijelölve
  • Több, nem szomszédos elemet a CTRL billentyű nyomva tartása mellett jelölhetünk ki, az egérrel az elemekre egyet kattintva
  • Az egér nyomva tartásával és húzásával egy téglalapalakú területet kijelölve
  • A Szerkesztés menü Mindet kijelöli (CTRL+A) parancsával a mappa teljes tartalmát kijelöljük.

Parancsikonok
A parancsikon egy fájl vagy mappa gyors elérésére szolgáló mutató. Jellegzetes helye az Asztal, de bármely mappában elhelyezhetjük. A Start menü például ilyen parancsikonok gyűjtője. Parancsikont rendelhetünk hozzá bármelyik programhoz, dokumentumhoz vagy nyomtatóhoz, legyen az az asztalon, vagy bármelyik mappában. Parancsikonokkal lehet a leggyorsabban elérni a gyakran használt elemeket.

Hajlékonylemez formázása
Ahhoz, hogy egy floppy lemezre adatokat írhassunk, legalább egyszer elő kell készítenünk az adatok helyét. Ezt a műveletet nevezzük a lemez formattálásának vagy formázásának. Napjainkban a piaci kínálat nagy többsége előre formázott lemezekből áll, mégis előfordulhat, hogy szükségünk van egy lemez megformázására. Akkor is a formázás műveletet használjuk, ha teljesen le kívánunk törölni egy lemezt, de mivel azon sok állomány található, a formázás gyorsabb, mint a fájlok egyenkénti törlése.

A formázáshoz nyissuk meg a Sajátgép mappát. Egyszeres kattintással jelöljük ki a formázni kívánt (A: vagy B:) meghajtót, majd válasszuk a Fájl menü Formázás parancsát.
Figyelem! A merevlemez formázásától óvakodjunk, mert ez minden adatunk és programunk elvesztését jelenti.

Hálózat


A helyi hálózaton összekötött számítógépek közt a Hálózatok logikai mappában tallózhatunk. Az itt megtalálható számítógépeknek természetesen nem láthatjuk a teljes tartalmát, csak azokat a mappáit, amelyeket a gép tulajdonosa elérhetővé tett a hálózaton, más szóval megosztott. Az osztott mappákhoz lehetőségünk van ún. hálózati meghajtót csatlakoztatni, így munkánk közben úgy dolgozhatunk velük, mint bármelyik saját mappánkkal. A kapcsolat létrehozásának és megszüntetésének legegyszerűbb módja a jobb egérkattintás, majd a Hálózati meghajtó csatlakoztatása (ill. leválasztása) parancs. Ugyanezt megtehetjük az Eszköztár ikonjaival is.

Másolás és mozgatás Fogd és vidd (Drag and Drop) módszerrel
A Windows munkánk meggyorsítása érdekében lehetővé teszi a Fogd és vidd módszer használatát a menük helyett. A Sajátgépben vagy a Windows Intézőben keressük meg a mozgatni kívánt fájlt vagy mappát. Biztosítsuk, hogy a képernyőn látható legyen az a hely (legyen az akár egy másik Intéző-ablak), ahová a fájlt vagy mappát mozgatni szeretnénk. Húzzuk a fájlt vagy a mappát a kívánt helyre. Ennek a műveletnek az eredménye attól függ, hogy milyen fájlt mozgattunk és hová.

Tippek:
Ha a jobb oldali egérgombbal végezzük a húzást, akkor egy menü fog megjelenni különféle lehetőségeket felkínálva.
Ha a fájlt ugyanazon lemez másik mappájába húzzuk át, akkor ezzel a fájlt egy másik helyre helyezzük át. Ha viszont másik lemezen lévő mappába húzzuk, akkor ezzel a fájlt átmásoltuk.
Ha a húzás közben lenyomva tartjuk az alábbi billentyűk valamelyikét, akkor a következők fognak történni:

  • SHIFT billentyű esetén a fájlt áthelyezése.
  • CTRL billentyű esetén a fájlt átmásolása.
  • CTRL+SHIFT billentyűk esetén parancsikon létrehozása

Leírások+Referenciák / Perl röviden / Fájl kezelés


A fájlkezelés az egyik legegyszerûbb dolog a Perl nyelvben. Mivel ez egy olyan terület, amelyik minden programban elõfordul, és mivel a Perl elsõsorban a UNIX operációs rendszerhez lett kitalálva, ahol a fájl alapfogalom, ezért nem csak könyvtári függvények, hanem programszerkezetek is rendelkezésre állnak a fájlok kezelésére.

A legegyszerûbb fájlkezelõ utasítás, amellyel korábbi példákban is már találkoznod kellett a print. Ez az utasítás, vagy ha úgy tetszik beépített függvény egy fájlba, vagy a szabványos kimenetre írja ki a paraméterként megadott értékeket. A paraméterek lehetnek sztringek, valós vagy egész számok, változók, amelyek ilyen értékeket tartalmaznak, de lehetnek mutatók, vagy nem skalár értékek is. Ez utóbbi esetben a print utasítás valamilyen olyan karakter alakban írja ki a változó, vagy kifejezés értékét, hogy az legalább hibakeresési célra használható legyen.

Nézzünk egy egyszerû példát:

$a = 1; $b= 'alma\n'; $c = "alma\n"; $d = \$c;
print $a,$b,$c,$d;

és az eredményt:

1alma\nalma
SCALAR(0xcb7468)

Látszik, hogy $a értéke 1, $b értéke az aposztróf használata miatt nem lett kifejtve, és emiatt nem újsor karakter van a végén, hanem egy \ és egy n betû, de $c végén már valóban van egy soremelés. $d egy mutató, amelyik a $c változóra mutat, és ennek nyomtatott képe a SCALAR(xxx). A konkrét érték minden egyes futtatásnál más lehet, attól függõen, hogy $c hova kerül a memóriában.

A print utasítás egyes paramétereit vesszõkkel választottuk el, azonban nagyon gyakran úgy akarunk kiíratni változó értékeket, hogy közbe mindenféle apróbb füzéreket helyezzük el. Például (ez a program az f2.pl fájlban van):

$a=3; $b=55;
print "A értéke=",$a," B értéke=",$b,"\n";

Ennek kimenete:

A értéke=3 B értéke=55

Aki azonban ezt a print utasítást leírta az nagyon nem Perl fejjel gondolkozott. Az IGAZI Perl programozó ilyenkor a következõ sorokat írja (ez a program az f3.pl fájlban van):

$a=3; $b=55;
print "A értéke=$a B értéke=$b\n";

aminek kimenete

A értéke=3 B értéke=55

Ha ez nem ugyanaz, mint az elõbb, akkor elrontottam a példát.

Természetesen nem csak a szabványos kimenetre lehet írni, hanem bármilyen fájlba, amelyiket írásra megnyitott a program. A fájlok megnyitására az open utasítás szolgál, a fájlok bezárására pedig a close. Nézzünk egy példát:

open(F,"<f2.pl");
open(G,">f3.bak");

while( $line = <F> )

close G;
close F;

Ez a kis program beolvassa az egyik fenti példaprogramot, és kiírja a f3.bak fájlba azt a verziót, amelyre azt mondtuk, hogy azt egy IGAZI Perl programozó készítette.

Egy kicsit lehet ebbõl a példából tanulni a reguláris kifejezéseket is, de most nem ez a lényeg. Figyeljünk arra, hogy hogyan nyitottuk meg a fájlt, hogyan írtunk bele, hogyan olvastunk belõle, és hogyan zártuk le.

Az elsõ dolog amit megfigyelhetünk, az az, hogy a fájlokat nem változókkal azonosítjuk, hanem handlerekkel (ki tudja a hivatalos terminológiát erre a szóra? fogantyú?). Ez azt jelenti, hogy a fájl azonosító elé nem írunk $ jelet, és általában nagybetût szoktunk használni a fájlazonosításra a programon belül, de ez csak konvenció, nem kötelezõ.

A másik dolog, amit meg lehet figyelni, hogy az open utasítás második argumentuma nem egyszerûen a fájl neve, hanem egy olyan füzér, amely tartalmazza a fájl nevét, de azt is, hogy a fájlt hogyan akarjuk megnyitni: írásra, olvasásra, vagy mindkettõre (ez utóbbira az elõzõ példában nincs minta, majd még lesz).

Ha az open utasításban a második argumentumban a fájl neve elõtt nincsen semmilyen jel, akkor a fájlt olvasásra nyitjuk meg. Ha < jel van a fájlnév elõtt, az ugyanaz, mintha nem használtunk volna semmilyen jelet. Általában szokás ezt használni, annak ellenére, hogy ez a default, mert olvashatóbbá teszi a programot.

Ha a fájl neve elõtt > jel van, akkor írásra nyitottuk meg a fájlt. Ha a fájl neve elõtt < jel van, akkor olvasásra. Ezen kívül még használható a >> jel a fájlhoz való hozzáírásra, a +< a fájl írására és olvasására. Erre használható a +> jel is, ez azonban megnyitáskor törli a fájlt.

A fájlmûveletek mindig a fájl aktuális pozíciójára vonatkoznak, amelyet egy fájl foganytú (handle) tartalmaz. Amikor kiírunk valamit, akkor oda íródik a szöveg ahova a foganyú mutató mutat, és ezután a fogantyú mutató a kiírt szöveg utánra fog mutatni. Amikor beolvasunk valamit egy fájlból, akkor onnan történik az olvasás ahova a fogantyú mutató mutat, majd az olvasás után a fogntyú motató a beolvasott adatok utánra fog mutatni. Ez olyan, mint más nyelveknél.

Egy fájlból olvasni a <F> alakban lehet, ahol a kisebb és a nagyobb jelek közé kell írni a fájlkezelõt. Ez az utasítás skalár környezetben egy rekordot olvas be, lista környezetben pedig a hátralevõ rekordok listáját. Egy rekord általában egy sor, mivel a rekord határoló karakter $/-ben megadva LF, de ha $/-nek más értéket adunk, akkor a beolvasás is másképp hajtódik végre. A végletekig elmenve ha a $/ változónak undef értéket adunk, akkor egész fájlokat tudunk változóba nagyon gyorsan beolvasni.

Ha egy fájlon belül akarjuk mozgatni a fogantyú mutatót, akkor erre a legegyszerûbb módszer a seek függvény meghívása. Ennek formája:

seek FILEFOGÓ,POZÍCIÓ,HONNAN

A FILEFOGÓ a fájlkezelõ, a POZÍCIÓ az a hely ahova állítani szeretnénk a mutatót, a HONNAN paraméter pedig lehet 0, 1 vagy 2. Ha HONNAN 0 akkor a fájlon belül POZÍCIÓ a fájl elejétõl számít. Ha HONNAN egy, akkor a mutató pillanatnyi pozíciójához képest fog elmozdulni, ha pedig 2, akkor a fájl végétõl számítva.

Általában ajánlatos ezt a függvényt meghívni minden olvasási és írási mûvelet között. Ennek az oka nem a Perl nyelvben keresendõ, hanem azokban a könyvtári függvényekben, amelyeket az operációs rendszer biztosít a Perl programok számára. A seek meghívásának a hatására a kiírandó adatok kikerülnek a pufferbõl, míg egy olvasás utáni írásnál egyes operációs rendszereken nem.

Ha azt akarjuk megtudni, hogy a fájlfogantyú mutatója éppen hova mutat, akkor a tell függvényt hívhatjuk meg. Argumentuma a fájlfogantyú, ha nem adunk meg argumentumot, akkor az utoljára olvasott fájlt fogja használni.

Egy fájl hosszát le lehet rövidíteni a truncate függvénnyel. Ennek két argumentuma van: a fájlfogantyú, és a megkívánt hossz.

Amikor egy fájlba írunk, vagy olvasunk onnan, akkor elõfordulhat, hogy más is hozzá akar férni a fájlhoz. Ez pedig gondot okozhat, ha egyszerre több processz is ír a fájlba. Ha tehát egy fájlt le akarunk foglalni, akkor a flock függvényt kell használni. Ennek két argumentumot kell megadni. Az elsõ a fájlfogantyú, a második a lezárás módja:

  • egyedi lezárás, más nem férhet hozzá a fájlhoz
  • lezárás megszüntetése.

A flock függvény addig fog várni, amíg hozzá nem lehet a megfelelõ módon férni a fájlhoz. Fontos, hogy eközben a fájlmutató értéke nem változik. Ha például egy fájlhoz hozzá akarunk írni, vagyis a >> jelet használtuk a fájl megnyitására, majd ezután a megnyitott fájlt megpróbáljuk lezárni flock függvénnyel, akkor ezután egy seek F,2 függvényhívást is meg kell ejtenünk, hogy a fájlmutató a fájl végére mutasson.

A fájlokat kezelõ függvényeknél általában nem csak egy fájlfogantyú nevet lehet megadni, hanem használni lehet ehelyett változót, amelynek értéke a fájlfogantyú neve. Ez alól Win32 környezetben egyes Perl verziók kivételek, ahol a truncate függvény hibás, és emiatt itt csak kerülõ út alkalmazható.

Vannak még más fájlkezelõ függvények is, ezekrõl részletesen a Perl beépített függvényeinél.

copy
Egy vagy több fájl másolása egy másik helyre. Használata:

COPY [/A | /B] forrás [/A | /B] [+ forrás [/A | /B] [+ ...]] cél [/A | /B]] [/V] [/Y | /-Y]

forrás A másolandó fájlt vagy fájlokat adja meg.
/A szövegfájlt jelöl.
/B Bináris fájlt jelöl.
cél Az új fájl(ok) könyvtárát és/vagy fájlnevét adja meg.
/V Ellenőrzi, hogy az új fájlok írása megfelelő-e.
/Y Elnyomja egy, már létező célfájl felülírásának megerősítésére
szolgáló figyelmeztetést.

Fájlok hozzáfűzéséhez célként adjunk meg egyetlen fájlt, de forrásként több fájlt (helyettesítő karakterek vagy a fájl1+fájl2+fájl3 alak használatával).

ren, rename
Fájl és könyvtár átnevezése. Használata:

RENAME [meghajtó:][elérési út]fájlnév1 fájlnév2
REN [meghajtó:][elérési út]fájlnév1 fájlnév2

Célként új meghajtó vagy elérési út nem adható meg.

move
Fájlok áthelyezése valamint fájlok és könyvtárak átnevezése. Egy vagy több fájlt áthelyezéséhez:

MOVE [/Y | /-Y] [meghajtó:][útvonal]fájlnév1[,...] cél

Könyvtár átnevezéséhez:

MOVE [/Y | /-Y] [meghajtó:][útvonal]könyvtárnév1 könyvtárnév2

[meghajtó:][útvonal]fájlnév1
Az áthelyezendő fájl vagy fájlok nevét
és helyét adja meg.
cél            A fájl új helyét adja meg. A cél egy meghajtó
betűjelét és egy kettőspontot, egy könyvtárnevet
vagy ezek kombinációját tartalmazhatja. Ha csak
egyetlen fájlt helyez át, akkor egy fájlnevet
is belefoglalhat, ha az áthelyezéskor a fájlt
át szeretné nevezni.
[meghajtó:][útvonal]könyvtárnév1
Az átnevezendő könyvtárat adja meg.
könyvtárnév2   A könyvtár új nevét adja meg.

/Y      Elnyomja a könyvtár létrehozásának vagy a cél felülírásának
megerősítését kérő figyelmeztető szöveget.
/-Y     Kéri a könyvtár létrehozásának vagy a cél felülírásának
megerősítését kérő figyelmeztető szöveget.

diskcopy
Az egyik hajlékonylemez tartalmának másolása egy másikra. Használata:

DISKCOPY [meghajtó1: [meghajtó2:]] [/1] [/V] [/M]

Csak a lemez első oldalát másolja.
/V Ellenőrzi, hogy az információ megfelelően másolódik-e.
/M Többmenetes másolás kikényszerítése csak a memória használatával.

A két hajlékonylemeznek ugyanolyan típusúnak kell lennie. A meghajtó1 és meghajtó2 paraméternek ugyanazt a meghajtót is megadhatjuk.

xcopy
Fájlok és könyvtárfák másolása. Használata:

XCOPY forrás [cél] [/A | /M] [/D[:dátum]] [/P] [/S [/E]]
[/W] [/C] [/I] [/Q] [/F] [/L] [/H] [/R] [/T]
[/U] [/K] [/N]

forrás  Meghatározza a másolandó fájlokat.
cél     Meghatározza az új fájlok helyét és nevét.
/A Az archiválandó attribútumú fájlokat másolja,
nem változtatja meg az attribútumokat.
/M Az archiválandó attribútumú fájlokat másolja,
törli az archiválandó attribútumot.
/D:     A megadott dátum után módosított fájlokat másolja.
Ha nincs dátum megadva, csak azokat a fájlokat másolja, amelyek
újabbak, mint a felülírandó fájl.
/P Jóváhagyást kér minden új fájl létrehozása előtt.
/S Az üres könyvtárak kivételével minden alkönyvtárt is másol.
/E Minden alkönyvtárt is másol (üreseket is).
Ugyanaz, mint /S /E. /T módosítására használható.
/W Jóváhagyást kér minden másolás előtt.
/C Hiba esetén is folytatja a másolást.
/I Ha nincs cél megadva, és egynél több fájlt kell másolni,
a célnak könyvtárnak kell lennie.
/Q Nem írja ki a fájl nevét másoláskor.
/F Másoláskor kiírja a teljes cél- és forrásfájl-nevet.
/L Kijelzi a másolandó fájlt.
/H Rejtett és rendszerfájlokat is másol.
/R Felülírja az írásvédett fájlokat.
/T Könyvtárszerkezetet hoz létre, de nem másol fájlokat.
Az üres könyvtárakat kihagyja. /T /E Hozzáveszi az üres
könyvtárakat is.
/U Frissíti a már létező célfájlokat.
/K Másolja az attribútumokat. Az XCOPY egyébként törli az írásvédett attribútumot.
/Y Jóváhagyás-kérés nélkül felülírja a létező fájlokat.
/-Y     Jóváhagyást kér a létező fájlok felülírásakor.
/N Rövid név létrehozásával másol.

attrib
Fájlattribútumok megjelenítése vagy módosítása. Használata:

ATTRIB [+R|-R] [+A|-A] [+S|-S] [+H|-H] [[meghajtó:][útvonal]fájlnév] [/S]
+ Attribútum beállítása
- Attribútum törlése
R Írásvédett fájl attribútum
A Archív fájl attribútum
S Rendszerfájl attribútum
H Rejtett fájl attribútum
/S Fájlok feldolgozása a megadott elérési út minden könyvtárában


A Turbo Pascal fájl fogalmán két dolgot érthetünk:

eszköz (device) fájlok: a számítógépen található I/O eszközök (billentyűzet, képernyő, nyomtató) és a kommunikációs csatornák közvetlen elérését teszik lehetővé

lemez (disc) fájlok: a számítógép lemezegységein tárolt egymással összefüggő adatok együttesét jelölik. Ezeket tartalmuk alapján szöveges (text), típusos és típus nélküli fájlok csoportjára oszthatjuk.

A fájlkezelés lépései programozási nyelvtől függetlenek. A használni kívánt fájlt előbb meg kell nyitni, mivel csak így férhetünk hozzá a benne tárolt adatokhoz. Ezután az adatokat olvashatjuk a fájlból, vagy írhatjuk a fájlba. Miután befejeztük munkánkat, a fájlt le kell zárni, hogy annak adatai a háttértáron megőrzésre kerüljenek.

Nézzük külön-külön a különböző tartalmú és típusú fájlokat először röviden:

szöveges fájlok: ezek a fájlok olyan sorokból épülnek fel, amelyek karaktereket tartalmaznak, és a kozsivissza/soremelés (CR/LF) vezérlőkarakterek zárják le. Ezeknek a vezérlőkaraktereknek az ASCII kódjuk 13 és 10 és a sorok végét jelzik a fájlban. A szöveges fájlokat tetszőleges szövegszerkesztővel létrehozhatjuk és módosíthatjuk. Ezek a fájlok elérésük és használatuk szempontjából a szekvenciális fájlokhoz tartoznak. Ez annyit jelent, hogy az egyes sorokat mindig a legelső sortól kezdve, egyesével olvashatjuk illetve írhatjuk. Kivéve, ha a fájlt a hozzáírás műveletéhez nyitottuk meg, mert ilyenkor az írás a fájl utolsó sora után kezdődik. A szöveges fájlt vagy csak olvashatjuk, vagy csak írhatjuk, tehát a fájl használata előtt el kell döntenünk, hogy mit szeretnénk csinálni.

típusos fájlok: olyan adathalmazok, amelyek jól definiált, azonos típusú összetevőkre, elemekre bonthatók. Ezen elemek típusa tetszőleges (kivéve fájl és objektum). A fájlban tárolt elemek a felírás sorrendjében 0-tól kezdve egyesével sorszámozódnak. A fájl feldolgozásánál ezen sorszám felhasználásával pozícionálhatunk az állomány valamely elemére. A típusos fájlok szerkezete valahogy így néz ki:

1. elem

2. elem

3. elem




n. elem

A szóhasználatban a rekord kifejezés terjedt el az elemek megnevezésére, de mi tudjuk, hogy a record kifejezés a Pascalban egy felhasználói adattípust jelent, tehát maradjunk az elem megnevezésnél.

A típusos fájlon végzett műveletek esetén, a művelet egysége az elem. A fájl méretét szintén a benne található elemek száma határozza meg. A típusos fájlok feldolgozása történhet szekvenciálisan illetve direkt módon egyaránt. A direkt módon történő feldolgozás lényegesen hatékonyabb, hisz a lényege annyi, hogy a fájlban mi pozícionálunk, ezáltal azon az elemen végezzük el műveleteinket amelyiken akarjuk. Ez a pozícionálás nem egyirányú, vagyis nem kell mindig a fájl elejéről indulni, bárhonnan bármerre mozoghatunk, mert minden elemnek van egy sorszáma, ami által elérhetjük.

típus nélküli fájlok: ezek használata nagy segítséget jelent az ismeretlen szerkezetű fájlok feldolgozásában. Amíg a szöveges fájlok sorelválasztó karaktereket tartalmaznak, a típusos fájlok adott típusú elemekből állnak, addig a típus nélküli fájlnál tetszőleges adatok olvashatók illetve írhatók. Mivel az adatforgalom a fájl és a program között mindenféle ellenőrzés nélkül megy végbe, gyors fájlkezelés valósítható meg. A típus nélküli fájlokkal végzett műveletekben egyetlen lépésben elérhető egység a blokk.

eszközök használata: a Pascal, ugyanúgy mint az operációs rendszer, a külső hardvert ( perifériákat: billentyűzet, képernyő, nyomtató) eszközökként kezeli. Programozói szempontból az eszköz egy fájl, amelyet ugyanazon eljárásokkal és függvényekkel érhetünk el, mint a lemez fájlokat. Ezen eszközök kezelésére általában szöveges fájlokat használunk, de bizonyos esetekben a típus nélküli fájl hatékonyabb megoldást biztosít. Az eszközök:

Fájlnév

Szabványos eszköz

Input vagy Output

AUX

Auxiliary (a COM1 szinonim neve)

I/O

COM1, COM2

Soros kommunikációs portok

I/O

CON

Konzol (I - billentyűzet, O - képernyő)

I/O

LPT1, LPT2, LPT3

Nyomtató portok

O

PRN

Nyomtatók (LPT1 szinonim neve)

O

NUL

Nulla eszköz

I/O

Szöveges fájl

azonosítás

ahhoz, hogy a programunkból szövegfájlt használjunk, deklarálnunk kell egy fájlváltozót, amely egyértelműen azonosítja a fájlt a programon belül. Ezen változó típusa Text.

var  fájl_változó: Text;

Ezután a fájlváltozóhoz hozzá kell rendelni az operációs rendszer szintjén található fájlt, hogy a program tudja melyik fájllal kell dolgoznia.

Assign(fájl_változó, fájl_név);

Ezután mi a programon belül már csak a fájl_változót használjuk azonosításként, magával a fájllal nem kell törődnünk.

  • megnyitás

a szövegfájlok megnyitására három módszer létezik. Mint azt már említettem vagy olvasásra, vagy írásra tudunk megnyitni egy szövegfájlt. Tehát a három kifejezés:

reset(fájl_változó);

Egy létező fájlt nyit meg, csak olvasásra. A megnyitás után az eof függvény true értékkel jelzi, ha a fájl üres. Ezen kívül a fájl elejére állítja az aktuális pozíciót (már megnyitott fájlon is elvégezhető).

rewrite(fájl_változó);

Egy új szövegfájlt hoz létre, vagy a létező fájlt újra írja (így annak teljes tartalma elvész). Az így megnyitott fájlokon csak az írás művelete hasznűlható. Az aktuális pozíció a fájl elejére kerül.

append(fájl_változó);

Egy létező fájlt nyit meg, csak hozzáírásra. Az aktuális pozíció a fájl végére kerül.

  • I/O műveletek:

a fájlba történő írás és a fájlból történő olvasás a már jól ismert write, writeln, read, readln eljárások módosított változataival oldhatjuk meg. Mindegyik eljárásnál első paraméterként a fájl_változót kell megadni:

write(fájl_változó, kifejezéslista); writeln(fájl_változó, kifejezéslista);

A különbség a két eljárás között az, hogy a writeln eljárás az írási művelet végeztével sorvége (CR/LF) jelet is ír a fájlba.

read(fájl_változó, kifejezéslista); readln(fájl_változó, kifejezéslista);

A readln eljárás, ellentétben a read eljárással, a fájlból mindig teljes sort olvas be, így az aktuális pozíció a művelet után a következő sor eleje lesz.

  • a fájl és a sor végének ellenőrzése:

Ha a szövegfájlt olvasásra nyitottuk meg, lehetőségünk van bizonyos ellenőrzések beépítésére, amelyek szükségesek ahhoz, hogy a programunk helyesen dolgozza fel a fájlt.

A fájl végének ellenőrzésére az eof(fájl_változó) függvény szolgál. Ez egy logikai típusú eredményt ad vissza, ami jelzi, hogy az aktuális pozíció a fájl utolsó eleme után helyezkedik el (true), vagy sem (false). Szövegfájloknál a fájl végét két dolog is jelezheti: a fájlban egy end-of-file jelzőt találunk (ASCII 26), vagy elértük a fájl fizikai végét. A seekeof(fájl_változó) függvény akkor is a fájl végét jelzi (true), ha az aktuális pozíció és a fájl vége között már csak szóköz, tabulátor vagy sorvége karakterek vannak.

Szeretnél friss híreket a weboldaladra? Katt ide a részletekért!

A sorok végének ellenőrzésére szintén két függvényt használhatunk. Hasonlóan az előzőhöz az eoln(fájl_változó) függvény true értékkel tér vissza, ha az aktuális pozíció az end-of-line (sorvége - CR/LF) jelzőn áll. A seekeoln(fájl_változó) akkor is jelzi a sor végét, ha az aktuális pozíció és a sor vége között már csak szóköz vagy tabulátor karakterek vannak.

Típusos fájl

  • deklarálás

var   fájl_változó: file of típus;

A típus tetszőleges Pascal típus lehet, kivéve a file és az object típusokat. Tehát lehet egyszerű és összetett, beépített vagy felhasználói típus egyaránt. Ezután a már előbb ismertetett módon az assign paranccsal hozzárendelünk a fájl_változóhoz egy fájlnevet.

  • megnyitás

a megnyitás előtt nem kell meggondolnunk, hogy most olvasni vagy írni akarunk a fájlba, mert ez teljesen mindegy. Azt kell csak eldönteni, hogy egy létező fájlt akarunk megnyitni, vagy pedig egy új fájlt akarunk létrehozni vagy a létezőt felülírni.

reset(fájl_változó); rewrite(fájl_változó);

Mindkét megnyitási mód után az aktuális pozíció a fájl elejét jelöli.

  • műveletek

az adatok kiírására a write, míg az olvasásra a read eljárásokat használhatjuk.

read(fájl_változó, változólista);

Az aktuális pozíciótól kezdve beolvassa a fájl elemeit a változólistában megadott változókba. A művelet végrehajtása után az aktuális pozíció az utoljára beolvasott elem után helyezkedik el.

write(fájl_változó, változólista);

Az aktuális pozíciótól kezdve, a változólistában megadott változók tartalmát a fájlba írja. Az aktiális pozíció az utoljára kiírt elem után helyezkedik el. Ha az írási művelet megkezdésekor az aktuális pozíció a fájl végén volt, akkor a write eljárás a fájlt kibővíti a megadott elemekkel.

Az elemek közvetlen elérését teszi lehetővé a seek eljárás:

seek(fájl_változó, longint_index);

Meghívása után az aktuális pozíció a longint_index paraméterben megadott pozíció lesz. Van még két függvény, ami a pozícionálásnál is felhasználható, és nagy segítséget nyújthat.

filesize(fájl_változó)

Ez a függvény longint típusú értékben adja meg a fájlban található elemek számát. Ha fájl üres, a visszaadott érték 0.

filepos(fájl_változó)

Szintén longint típusú értékben az aktuális pozíció indexét adja vissza. A fájlban az elemek sorszámozása 0-tól kezdődik. A fájl végénak elérésekor a filesize és a filepos függvények ugyanazt az értéket adják.

Az utolsó eljárással a fájlunkat "lecsonkíthatjuk".

truncate(fájl_változó);

Szeretnél friss híreket a weboldaladra? Katt ide a részletekért!

A művelet végrehajtása után az aktuális pozíció lesz a fájl vége. Így az aktuális pozíciótól a fájl végéig tartó részt levágjuk, amelynek tartalma elvész.

  • a fájl végének ellenőrzésére itt is használhatjuk az eof(fájl_változó) függvényt.

Típus nélküli fájl

  • deklaráció var   fájl_változó: File;

Plusz az assign parancs a már jól megismert módon.

  • megnyitás

hasonlóan működik mint a típusos fájloknál, egy kis kiegészítéssel. Mint már mondtam a típus nélküli fájlokkal végzett műveletekben, egyetlen lépésben elérhető egység a blokk. A blokk mérete alapértelmezésben 128 bájt, de ez a fájl nyitásakor a reset és rewrite eljárások második paraméterével módosítható.

reset(fájl_változó, blokk_méret); rewrite(fájl_változó, blokk_méret);

  • műveletek

a típus nélküli fájlok írása és olvasása szintén blokkban történik. A blockread eljárást olvasásra, a blockwrite eljárást pedig írásra használjuk:

BlockRead(fájl_változó, puffer, cnt); BlockWrite(fájl_változó, puffer, cnt);

A két eljárás paraméterezése teljesen megegyezik: természetesen meg kell adnunk a fájlt azonosító fájl_változót, az adatátvitelhez használt puffert (bármilyen típusú lehet) és az egy lépésben olvasni, illetve írni kívánt blokkok számát (cnt).

A seek eljárás, ennek megfelelően, blokkonkénti pozícionálást hajt végre, illetve a filepos függvény az aktuális blokk sorszámával tér vissza. A filesize függvény pedig a fájl_fizikai_mérete div blokk_méret kifejezés értékével tér vissza. Ha a fájl hossza nem osztható maradék nélkül a blokk_mérettel, akkor a fennmaradó bájtok nem érhetőek el. Ezért, ha olyan programot kívánunk írni, amely tetszőleges fájlt fel tud dolgozni, akkor a blokk_méretet 1-nek kell választanunk. A truncate eljárás szintén használható.

  • a fájl végének ellenőrzésére szintén használhatjuk az eof(fájl_változó) függvényt.

Nem véletlenül nem említettem egyik típusnál sem a fájl lezárását. Ugyanis ez az eljárás mindegyik típusnál ugyanaz, bárhogyan is nyitottuk meg azt:

Szeretnél friss híreket a weboldaladra? Katt ide a részletekért!

close(fájl_változó);

Eszközök

Ezen eszközök elésére általában szövegfájlokat használunk, de bizonyos esetekben a típus nélküli fájl hatékonyabb megoldást biztosít.

  • deklarálás a fent ismertetett módon, atóll függően, hogy milyen típusú fájl akarunk használmi.

Az összerendelés a következőképpen módosul: az assign parancsban a fájl_változó mellé nem egy fájlnevet kell írni, hanem a fenti táblázatban ismertetett eszközök valamelyikét.

Minden egyéb műveletet, típustól függően az előbb ismertetett módon kell végrehajtani.

Hibakezelés

Ha a fájl nyitásakor valamilyen hiba lép fel (pl.: nem létező fájlt nyitunk meg olvasásra), akkor a programunk Runtime error xxx at yyyy:zzzz hibaüzenettel leáll. A Pascal lehetővé teszi, hogy az Input/Output (I/O) műveleteknél fellépő hibákat a programon belül dolgozzuk fel. A kritikus programrészletetet a és direktívák közé helyezve az IOResult függveny visszaadott értékéből következtethetünk a hiba megjelenésére.

Az IOResult függvény értékéből mindig csak a legutolsó I/O művelet lefolyására következtethetünk. A függvény hívása törli a belső állapotjelző értékét, így ha többször szeretnénk azt lekérdezni, akkor egy saját, Integer típusú változóban kell eltárolnunk az első híváskor visszaadott értéket. Az IOResult 0 értékkel tér vissza, ha a legutolsó I/O művelet sikeres volt, és valamilyen run-time hiba kódjával, ha nem.

A legkritikusabb pont a fájl megnyitása. Tehát itt egy programrészlet ami bemutattja, hogyan ellenőrizhetjük műveletünk sikerességét:

  Reset(f);   Ior:=IOResult; if Ior<>0 then    begin     WriteLn('A fájl nem létezik!');     Exit;   end;

Találat: 4902


Felhasználási feltételek