当前位置: 首页 > 文档资料 > Perl 入门教程 >

open

优质
小牛编辑
127浏览
2023-12-01

描述 (Description)

此函数使用指定的文件句柄打开文件。 文件句柄可以是表达式,结果值用作句柄。 如果没有指定文件名,则使用与所使用的文件句柄同名的变量(这应该是一个标量变量,其字符串值引用文件名)。 特殊文件名' - '表示STDIN,'> - '表示STDOUT。

语法 (Syntax)

以下是此函数的简单语法 -

open FILEHANDLE, EXPR, LIST
open FILEHANDLE, EXPR
open FILEHANDLE

返回值 (Return Value)

此函数在失败时返回o,在成功时返回1。

例子 (Example)

以下是以只读模式打开file.txt的语法。 这里小于

open(DATA, "<file.txt");

这里DATA是用于读取文件的文件句柄。 以下是打开文件并在屏幕上打印其内容的示例。

#!/usr/bin/perl
open(DATA, "<file.txt");
while(<DATA>) {
   print "$_";
}

以下是在写入模式下打开file.txt的语法。 这里小于>符号表示文件必须以书写模式打开 -

open(DATA, ">file.txt");

此示例实际上在打开文件之前截断(清空)文件,这可能不是所需的效果。 如果要打开文件进行读写,可以在>或

例如,要打开文件进行更新而不截断它 -

open(DATA, "+<file.txt");

要先截断文件 -

open DATA, "+>file.txt" or die "Couldn't open file file.txt, $!";

您可以在追加模式下打开文件。 在此模式下,写入点将设置为文件的结尾。

open(DATA,">>file.txt") || die "Couldn't open file file.txt, $!";

双>>打开文件以进行追加,将文件指针放在末尾,以便您可以立即开始附加信息。 但是,除非你在它前面加上一个加号,否则你不能从中读取 -

open(DATA,"+>>file.txt") || die "Couldn't open file file.txt, $!";

以下是给出不同模式的可能值的表。

Entities    Definition
< or r		Read Only Access
> or w		Creates, Writes, and Truncates
>> or a         Writes, Appends, and Creates
+< or r+	     Reads and Writes
+> or w+	     Reads, Writes, Creates, and Truncates
+>> or a+    Reads, Writes, Appends, and Creates