【发布时间】:2011-07-10 18:56:34
【问题描述】:
我正在将 PDF 文件读入字节数组 byte[] 并将其发送到 Perl SOAP::Lite Web 服务。一旦 Perl 服务接收到这个字节数组,我想将它们写入一个文件(当然带有 PDF 扩展名)。
我怎样才能做到这一点?我可以挖掘的所有示例都假设我想从打开文件开始,读取,然后写入......但是如果只有原始数据可以使用呢?
【问题讨论】:
标签: perl file pdf soap file-io
我正在将 PDF 文件读入字节数组 byte[] 并将其发送到 Perl SOAP::Lite Web 服务。一旦 Perl 服务接收到这个字节数组,我想将它们写入一个文件(当然带有 PDF 扩展名)。
我怎样才能做到这一点?我可以挖掘的所有示例都假设我想从打开文件开始,读取,然后写入......但是如果只有原始数据可以使用呢?
【问题讨论】:
标签: perl file pdf soap file-io
我认为字节数组不能很好地使用 perl 数据结构,这样会浪费大量内存。只需使用字符串作为文件内容并将其写入二进制文件(open 中的:raw 设置):
my $pdf_data = 'contents of PDF ...';
open my $ofh, '>:raw', 'output.pdf'
or die "Could not write: $!";
print {$ofh} $pdf_data;
close $ofh;
【讨论】:
这对你有用吗?我的 Perl 有点生锈了。
open(OUTFILE,">>output.pdf");
binmode OUTFILE;
foreach my $byte (@bytes){
print OUTFILE $byte;
}
close(OUTFILE);
【讨论】: