我有办法从文件中获取字节并将其存储在Perl数组中吗?
例如,如果我的文件有100个字节,我希望能够创建一个数组,其中每个元素包含10个字节。
我知道如何创建数组和存储行,但我不确定如何只获取字节。
答案 0 :(得分:7)
输入记录分隔符 $/
通常设置为一个字符串(通常为换行符"\n"
),表示文件中每条记录的结尾。
但是,它也可以(暂时)设置为对的引用,该整数指定固定长度记录的大小。
您也可能希望以原始(二进制)模式读取文件,因此您的代码看起来像这样
use strict;
use warnings;
use autodie;
my @data = do {
open my $fh, '<:raw', 'myfile';
local $/ = \10;
<$fh>;
};
请注意,如果更方便,长度可以是字符串
local $/ = \'10';
或包含整数或字符串
的变量my $record_size = 10;
local $/ = \$record_size;