Moduł IO::File
Uniwersytet Gdański - Instytut Matematyki - Zakład Informatyki - Strona domowaSpis treści
Co to jest?
Moduł IO::File zwraca objekt metody dla uchwytu pliku
Opis
IO::File dziedziczy po IO::Handle i IO::Seekable. Rozszerza te klasy metodami, które są przeznaczone do uchwytu pliku.
Konstruktor
- new (FILENAME [,MODE [,PERMS]])
- tworzy IO::File. Jeśli otrzymuje jakieś parametry, są one przekazywane do metody open Jeśli otworzenie się nie powiedzie , objekt jest niszczony. W przeciwnym przypadku jest zwracany do wywoływacza
- new _tmpfile
- tworzy IO::File otwarty dla czytania i pisania , dla nowo stworzonego pliku tymczasowego. W systemi gdzie to jest możliwe, plik tymczsowy jest anonimowy Jeśli plik tymczasowy nie może zostać utworzony lub otwarty, IO::File ojekt jest niszczony. W przeciwnym przypadku jest zwracany do wywoływacza
Metody
- open( FILENAME [,MODE [,PERMS]])
- open( FILENAME,IOLAYERS)
- open - akceptuje jeden,dwa lub trzy argumenty. Z jednym argumentem, przekazywana jest nazwa pliku dla wbudowanej funkcji open. Z dwoma lub trzema argumentami, pierwszy parametr jest nazwą pliku (może zawierać białe znaki lub znaki specjalne) a drugi parametr jest to tryb otwarcia pliku.
- Jeśli IO::File::open otrzymuje Perlowy typ napisu ( "<","+<" itd) lub typ napisu ANSI C fopen() ("w","r+" itd ), wtedy jest używany podstawowy operator Perla open.
- Jeśli IO::File::open otrzymuje typ który zawiera znak ":" , argumenty te przekazywane są do trzy-argumentowego operatora open.
- Jeśli IO::File::open otrzymuje typ numeryczny, przekazuje ten typ i i opcjonalną wartość dostępu do operatora Perlowego sysopen.
- binmode( [LAYER] )
- binmode umieszcza binmode w podstawowym objekcie IO, jak jest to pokazane w domunentacji perldoc -f binmode.
- binmode akceptuje jeden opcjonalny parametr.
Przyklad użycia
use IO::File;
$fh = new IO::File;
if ($fh->open("< file")) {
print <$fh>;
$fh->close;
}
$fh = new IO::File "> file";
if (defined $fh) {
print $fh "bar\n";
$fh->close;
}
$fh = new IO::File "file", "r";
if (defined $fh) {
print <$fh>;
undef $fh; # autoamtycznie zamyka plik
}
$fh = new IO::File "file", O_WRONLY|O_APPEND;
if (defined $fh)
print $fh "corge\n";
$pos = $fh->getpos;
$fh->setpos($pos);
undef $fh; # autoamtycznie zamyka plik
}
autoflush STDOUT 1;
Dokumentacja
- Więcej na ten temat: http://perldoc.perl.org/IO/File.html
Kontakt i informacje o autorze opracowania
Autor: P.T.
[c] Piotr Arłukowicz, materiały z tej strony udostępnione są na licencji GNU.