Perl 文件操作
Perl 使用一种叫做文件句柄类型的变量来操作文件。
从文件读取或者写入数据需要使用文件句柄。
文件句柄(file handle)是一个I/O连接的名称。
Perl提供了三种文件句柄:STDIN,STDOUT,STDERR,分别代表标准输入、标准输出和标准出错输出。
Perl 中打开文件可以使用以下方式:
open FILEHANDLE, EXPR
open FILEHANDLE
sysopen FILEHANDLE, FILENAME, MODE, PERMS
sysopen FILEHANDLE, FILENAME, MODE
参数说明:
FILEHANDLE:文件句柄,用于存放一个文件唯一标识符。
EXPR:文件名及文件访问类型组成的表达式。
MODE:文件访问类型。
PERMS:访问权限位(permission bits)。
Open 函数
以下代码我们使用 open 函数以只读的方式(
open(DATA, "
代码中的 DATA 为文件句柄用于读取文件,以下实例将打开文件并将文件内容输出:
实例
#!/usr/bin/perlopen(DATA,"){print"$_";}
以下代码以写入( > )的方式打开文件 file.txt:
open(DATA, ">file.txt") or die "file.txt 文件无法打开, $!";
>表示写入方式。
如果你需要以读写方式打开文件,可以在 > 或 < 字符前添加 + 号:
open(DATA, "+
这种方式不会删除文件原来的内容,如果要删除,格式如下所示:
open DATA, "+>file.txt" or die "file.txt 文件无法打开, $!";
如果要向文件中追加数据,则在追加数据之前,只需要以追加方式打开文件即可:
open(DATA,">>file.txt") || die "file.txt 文件无法打开, $!";
>> 表示向现有文件的尾部追加数据,如果需要读取要追加的文件内容可以添加 + 号:
open(DATA,"+>>file.txt") || die "file.txt 文件无法打开, $!";
下表列出了不同的访问模式: