NAME
IO::File - supply object methods for filehandles
SYNOPSIS
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; # automatically closes the file
}
$fh = new IO::File "file", O_WRONLY|O_APPEND;
if (defined $fh) {
print $fh "corge\n";
$pos = $fh->getpos;
$fh->setpos($pos);
undef $fh; # automatically closes the file
}
autoflush STDOUT 1;
DESCRIPTION
IO::File
inherits from IO::Handle
and IO::Seekable
. It extends these classes with methods that are specific to file handles.
CONSTRUCTOR
- new ([ ARGS ] )
-
Creates a
IO::File
. If it receives any parameters, they are passed to the methodopen
; if the open fails, the object is destroyed. Otherwise, it is returned to the caller.
METHODS
- open( FILENAME [,MODE [,PERMS]] )
-
open
accepts one, two or three parameters. With one parameter, it is just a front end for the built-inopen
function. With two parameters, the first parameter is a filename that may include whitespace or other special characters, and the second parameter is the open mode, optionally followed by a file permission value.If
IO::File::open
receives a Perl mode string (">", "+<", etc.) or a POSIX fopen() mode string ("w", "r+", etc.), it uses the basic Perlopen
operator.If
IO::File::open
is given a numeric mode, it passes that mode and the optional permissions value to the Perlsysopen
operator. For convenience,IO::File::import
tries to import the O_XXX constants from the Fcntl module. If dynamic loading is not available, this may fail, but the rest of IO::File will still work.
SEE ALSO
perlfunc, "I/O Operators" in perlop, IO::Handle IO::Seekable
HISTORY
Derived from FileHandle.pm by Graham Barr <bodg@tiuk.ti.com>.