我正在将PDF文件读入字节byte[]
数组并将其发送到Perl SOAP :: Lite Web服务。一旦Perl服务收到这个字节数组,我想把它们写到一个文件中(当然是带有PDF扩展名)。
我怎样才能做到这一点?我可以挖掘的所有例子都假设我想开始打开文件,阅读,然后写...但是如果只有原始数据可以使用呢?
答案 0 :(得分:4)
我不认为字节数组很好地利用了perl数据结构,你会以这种方式浪费大量内存。只需将字符串用于文件内容并将其写入二进制文件(:raw
中的open
设置):
my $pdf_data = 'contents of PDF ...';
open my $ofh, '>:raw', 'output.pdf'
or die "Could not write: $!";
print {$ofh} $pdf_data;
close $ofh;
答案 1 :(得分:1)
这对你有用吗?我的Perl有点生锈。
open(OUTFILE,">>output.pdf");
binmode OUTFILE;
foreach my $byte (@bytes){
print OUTFILE $byte;
}
close(OUTFILE);