IO::Seekable - 为 I/O 对象提供基于查找的方法
use IO::Seekable;
package IO::Something;
@ISA = qw(IO::Seekable);
IO::Seekable
没有自己的构造函数,因为它旨在被其他基于 IO::Handle
的对象继承。它提供允许查找文件描述符的方法。
返回一个不透明的值,该值表示 IO::File 的当前位置,如果这不可能(例如不可查找的流,如终端、管道或套接字),则返回 undef
。如果您的 C 库中提供了 fgetpos() 函数,则它用于实现 getpos,否则 perl 使用 C 的 ftell() 函数模拟 getpos。
使用先前 getpos 调用值返回到先前访问的位置。成功时返回“0 但为真”,失败时返回 undef
。
有关以下支持的 IO::Seekable
方法的完整描述,请参见 perlfunc,这些方法只是对应内置函数的前端
将 IO::File 查找到相对于 WHENCE 的位置 POS
POS 是绝对位置。(相对于文件开头查找)
POS 是相对于当前位置的偏移量。(相对于当前位置查找)
POS 是相对于文件末尾的偏移量。(相对于末尾查找)
如果您不想在代码中使用数字 0
1
或 2
,可以从 Fcntl
模块导入 SEEK_* 常量。
成功返回 1
,否则返回 0
。
类似于 $io->seek,但使用系统调用 lseek(2) 直接设置 IO::File 的位置,因此会混淆大多数 perl IO 运算符,除了 sysread 和 syswrite(有关完整详细信息,请参阅 perlfunc)
返回新位置,或在失败时返回 undef
。位置零将作为字符串 "0 but true"
返回
返回 IO::File 的当前位置,或在错误时返回 -1。
perlfunc,"I/O 运算符" 在 perlop 中,IO::Handle IO::File
源自 Graham Barr <[email protected]> 的 FileHandle.pm