我有一个简单的打印脚本
my $pdf_data = $agent->content;
open my $ofh, '>:raw', "test.pdf"
or die "Could not write: $!";
print {$ofh} $pdf_data;
close $ofh;
有时我会收到“宽字符警告”,我知道为什么会收到这个警告,并且希望能够取消打印而不是打印损坏的失败。就像是
if(wideCharWarning)
{
delete "test.pdf"
}
else{
print {$ofh} $pdf_data;
}
最佳答案
如果你想检测你的字符串是否包含宽字符,你可以使用这样的正则表达式:
/[^\x00-\xFF]/;
(正如池上在下面提到的,我的第一个建议是不行的:
/[^[:ascii:]]/;
会产生误报)
关于如果宽字符错误,Perl 停止打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10437455/