A FileHandle néhány hasznos módszere
A FileHandle modul néhány gyakran használt módszere a következő:
Módszer | Célja |
Mondd | A fájl méretének bájtokban való számlálására szolgál. |
getc | A fájltartalom minden karakterének beolvasására szolgál. |
keresni | A fájlmutató mozgatására szolgál egy adott pozícióba. |
eof | A fájl végét jelzi. |
Bezárás | A korábban meghatározott fájlkezelő bezárására szolgál. |
Példák a Perl FileHandle-re
Az oktatóanyag ezen része a FileHandle modul különböző felhasználási módjait mutatja be több példán keresztül.
1. példa: Hozzon létre egy új fájlt
Hozzon létre egy Perl-fájlt a következő szkripttel, amely új fájlt hoz létre a FileHandle modul használatával. A rendszer a felhasználótól veszi a fájlnevet, és ellenőrzi, hogy létezik-e vagy sem. Ha a fájl nem létezik, a fájl megnyitásra kerül írásra úgy, hogy 1 másodperc várakozás után létrehoz egy „FileHandle” osztály objektumot.
#!/usr/bin/perl
szigorúat használj ;
használat figyelmeztetések ;
használd az 5.34.0-t ;
használja a FileHandle-t ;
#Vegye el a fájlnevet a felhasználótól a létrehozáshoz
nyomtatás 'Írja be a fájlnevet:' ;
én $f = <>;
chomp ( $f ) ;
#Ellenőrizze, hogy a fájl létezik-e vagy sem
ha ( -e $f )
{
# Nyomtasson üzenetet, ha a fájl létezik
mond 'A fájl már létezik.' ;
}
más
{
#Fájlkezelő objektum létrehozása
az én $FileHandlerem = File Handle- > új ;
mond 'A fájlba írás...' ;
#Várjon 1 másodpercet
alvás ( 1 ) ;
#Nyissa meg a fájlt íráshoz
ha ( $FileHandler- > nyisd ki ( '> $f' ) )
{
#Írjon egy sort a fájlba
nyomtatás $FileHandler „Ez egy tesztüzenet. \n Ez a második sor. \n ' ;
# Zárja be a fájlkezelőt
$FileHandler- > Bezárás ;
}
}
Kimenet:
A kimenet szerint a „test.txt” fájl korábban nem létezett, és ez a fájl kétsoros szöveggel jön létre. Ezután a „cat” parancs végrehajtásra kerül annak ellenőrzésére, hogy a fájl sikeresen létrejött-e a tartalommal vagy sem:
A szkript újra lefut ugyanazzal a bemeneti értékkel, és a „Fájl már létezik” üzenet kerül kinyomtatásra, mert a „test.txt” fájl korábban létrejött.
2. példa: Olvassa el a fájl tartalmát
Hozzon létre egy Perl-fájlt a következő szkripttel, amely beolvassa egy fájl tartalmát a „FileHandle” osztály használatával, ha a fájl létezik. A fájlnév a felhasználótól származik.
#!/usr/bin/perlszigorúat használj ;
használat figyelmeztetések ;
használd az 5.34.0-t ;
használja a FileHandle-t ;
#Vegye el a fájlnevet a felhasználótól a létrehozáshoz
én $f = <>;
én $f = ;
chomp ( $f ) ;
#Ellenőrizze, hogy a fájl létezik-e vagy sem
ha ( -e $f )
{
#Nyissa meg a fájlt olvasásra
az én $FileHandlerem = File Handle- > új ( ' < $f' ) ;
#Nyomtassa ki a fájl tartalmát
nyomtatás < $FileHandler >;
# Zárja be a fájlkezelőt
zárja be a $FileHandlert ;
}
Kimenet:
A „test.txt” fájl tartalma a kimenetben kerül kinyomtatásra, mert az az aktuális helyen létezik:
3. példa: Tartalom hozzáfűzése egy fájlhoz
Hozzon létre egy Perl-fájlt a következő szkripttel, amely hozzáfűzi a tartalmat egy nem üres fájlhoz, és kinyomtatja a fájl méretét bájtokban. A fájlnév a felhasználótól származik. Ha a fájl létezik és tartalmazza az adatokat, akkor a fájl végére egy sor szöveg kerül. Ellenkező esetben a rendszer egy üzenetet nyomtat.
#!/usr/bin/perlszigorúat használj ;
használat figyelmeztetések ;
használd az 5.34.0-t ;
használja a FileHandle-t ;
#Vegye el a fájlnevet a felhasználótól a létrehozáshoz
nyomtatás 'Írja be a fájlnevet:' ;
én $f = <>;
chomp ( $f ) ;
#Ellenőrizze, hogy a fájl létezik-e már, és nincs-e üres
ha ( -s $f )
{
az én $FileHandlerem = File Handle- > új ( ' >> $f' ) ;
#Nyomtassa ki a fájlméretet
nyomtatás 'A fájl mérete' . $FileHandler- > Mondd. ' bájt. \n ' ;
mond 'Tartalom hozzáfűzése a fájlhoz...' ;
#Várjon 1 másodpercet
alvás ( 1 ) ;
#Írjon tartalmat a fájl végére
nyomtatás $FileHandler „Ez egy új vonal. \n ' ;
# Zárja be a fájlkezelőt
$FileHandler- > Bezárás ;
}
más
{
mond 'A fájl nem létezik.' ;
}
Kimenet:
A kimenet szerint a „test.txt” fájlhoz egy új sort fűzünk, és a fájl mérete 45 bájt. Ezután a „cat” parancs végrehajtásra kerül annak ellenőrzésére, hogy a tartalom megfelelően hozzáadva van-e a fájlhoz:
Következtetés
A FileHandle modul a Perl egyik lehetősége a fájlok olvasására, írására vagy hozzáfűzésére. Ebben az oktatóanyagban a modul három különböző felhasználását mutatjuk be egyszerű példákon keresztül.