如何在Perl中创建二进制文件?

例如,我想创建一个名为sample.bin的文件,并放置一个数字,如255,以便255在文件中保存为little-endian,FF 00.或3826到F2 0E。

我试着使用binmode,如perldoc所说。

解决方法

perl pack函数将根据模板返回“二进制”数据。
open(my $out,'>:raw','sample.bin') or die "Unable to open: $!";
print $out pack('s<',255) ;
close($out);

在上面的例子中,’s’告诉它输出一个短(16位),’&’强制它到小端模式。

此外,在调用open中的’:raw’指示它将文件句柄放入二进制模式在平台上(这相当于使用binmode)。 PerlIO手册页有更多的信息,以不同的格式做I / O。

相关文章

1. 如何去重 #!/usr/bin/perl use strict; my %hash; while(...
最近写了一个perl脚本,实现的功能是将表格中其中两列的数据...
表的数据字典格式如下:如果手动写MySQL建表语句,确认麻烦,...
巡检类工作经常会出具日报,最近在原有日报的基础上又新增了...
在实际生产环境中,常常需要从后台日志中截取报文,报文的形...
最近写的一个perl程序,通过关键词匹配统计其出现的频率,让...