📜  珀尔 |文件 I/O 函数

📅  最后修改于: 2022-05-13 01:54:34.450000             🧑  作者: Mango

珀尔 |文件 I/O 函数

Perl 中的文件处理用于从外部文件读取数据或将数据写入外部文件。这非常有用,因为它提供了一个平台来永久存储和检索文件中的数据。

文件句柄
FileHandle 将名称与外部文件相关联,该文件可以在程序结束或 FileHandle 关闭之前使用。简而言之,FileHandle 就像一个连接,可用于修改外部文件的内容,并为连接(FileHandle)命名,以便更快地访问和简化。

输入和输出函数(I/O 函数)是文件处理的一个组成部分,下面是通过示例解释的主要 I/O 函数。

读取线()

此函数从给定表达式必须引用的 FILEHANDLE 中读取一行。对于每个函数调用,都会读取文件的下一行。这可以重复,直到到达文件末尾。为了直接使用文件句柄,它必须作为 typeglob 传递。

句法:

readline (EXPR)

例子:

#!/ usr / bin / perl - w
  
my($data) = "";
open(F, "Hello.txt") or 
 die("Error encountered while reading file");
  
$data = ;
print("$data");
  
$data = readline(*F);
print("$data");
  
close(F);

输出:

二进制模式()

该函数用于设置FILEHANDLE的读写格式为二进制。当文件以二进制形式写入时,它没有文件结尾字符。由于数据是以二进制形式读写的,因此执行速度更快,效率更高,因为数据不必由机器转换并且可以直接理解。

句法:

binmode(FILEHANDLE)

例子:

#!/ usr / bin / perl
   
my($read_data);
open(DATA, "

读()

此函数用于在执行期间从文件中读取所需数量的字符,即,它可用于读取缓冲信息块。它还用于从文件中读取二进制数据。
句法:

read(FILEHANDLE, SCALAR, LENGTH)

例子:

#!/ usr / bin / perl
   
my($read_data);
open(DATA, "

输出:

打印()

print() 是 perl 中最重要的 I/O 函数之一。它用于从控制台将数据输出到文件中。

句法:

print FILEHANDLE LIST

例子:

#!/ usr / bin / perl
  
my($read_data);
open(DATA, "

print()之前的文件:

输出:
这会将“这些是文件内容”写入文件data.txt

寻找()

此函数用于将文件指针的位置更改为所需位置。这里的位置也可以分别改变到另一个指定的位置(WHENCE)。

句法:

seek(FILEHANDLE, POSITION, WHENCE)

这里 WHENCE 用于指定指针移动到的相应位置。
a) WHENCE = 0,表示指针必须从文件的开头开始。
b) WHENCE = 1,表示指针必须从文件的当前位置开始。
c) WHENCE = 2,表示指针必须从文件末尾开始。

例子:

#!/ usr / bin / perl
  
my($read_data);
open(DATA, "

输出:

The position of the pointer will be set to the specified position.

告诉()

该函数用于从程序中获取指针在文件中的位置。

句法:

tell(FILEHANDLE)

例子:

#!/ usr / bin / perl
  
my($read_data);
open(DATA, "

输出:

之所以如此,是因为最初指针位于 0 位置,但在读取一个字符后,它会移动到位置 1。

关闭()

当我们打开一个文件时,我们将一个 FILEHANDLE 与一个外部文件相关联。因此,当我们使用完文件后,我们必须解除 FILEHANDLE 与文件的关联,为此,使用了 close()函数。这会刷新 FILEHANDLE 的缓冲区。

句法:

close(FILEHANDLE)

例子:

#!/ usr / bin / perl
  
my($read_data);
open(DATA, "