使用Perl将PDF文件字节写入文件?

时间:2011-03-08 01:43:00

标签: perl file pdf soap file-io

我正在将PDF文件读入字节byte[]数组并将其发送到Perl SOAP :: Lite Web服务。一旦Perl服务收到这个字节数组,我想把它们写到一个文件中(当然是带有PDF扩展名)。

我怎样才能做到这一点?我可以挖掘的所有例子都假设我想开始打开文件,阅读,然后写...但是如果只有原始数据可以使用呢?

2 个答案:

答案 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);