Wide character in print at check_cert.pl line 18.

来源:互联网 发布:js给span标签赋值 编辑:程序博客网 时间:2024/05/19 20:19
[oracle@yyjk md]$ cat check_cert.pl use DBI; use Encode;no utf8;my  $dbName = 'tlyy';  my  $dbUser = 'tlcbuser';  my  $dbUserPass = 'tlcbuser';  my  $dbh = DBI->connect("dbi:Oracle:$dbName", $dbUser, $dbUserPass) or die "can't connect to database " ;my $hostSql = qq{select trim(a.name),to_char(a.expired_date),round( expired_date - sysdate) as vardate from tlcb_cert_device a};my ($a,$b,$c);my $selStmt = $dbh->prepare($hostSql);  $selStmt->bind_columns(undef, \$a, \$b, \$c);  $selStmt->execute();  while( $selStmt->fetch() ){         if ($c < 30){           my $hint='证书到期日期还有';              $hint=decode_utf8($hint);               #$a=decode_utf8("$a");              print "$a"."---"."$b"."---"."$hint"."$c"."\n";;}};  $selStmt->finish;  $dbh->disconnect or warn "DB disconnect failed: $DBI::errstr\n";[oracle@yyjk md]$ perl check_cert.pl Wide character in print at check_cert.pl line 18.二代支付证书---15-11月-16---证书到期日期还有-239Wide character in print at check_cert.pl line 18.二代支付证书---15-11月-16---证书到期日期还有-239Wide character in print at check_cert.pl line 18.支付宝证书---06-8月 -17---证书到期日期还有25Wide character in print at check_cert.pl line 18.管理员usbkey证书---10-1月 -17---证书到期日期还有-183Wide character in print at check_cert.pl line 18.分析员usbkey证书---10-1月 -17---证书到期日期还有-183解决办法:use DBI; use Encode;use utf8;binmode(STDIN, ':encoding(utf8)');binmode(STDOUT, ':encoding(utf8)');binmode(STDERR, ':encoding(utf8)');my  $dbName = 'tlyy';  my  $dbUser = 'tlcbuser';  my  $dbUserPass = 'tlcbuser';  my  $dbh = DBI->connect("dbi:Oracle:$dbName", $dbUser, $dbUserPass) or die "can't connect to database " ;my $hostSql = qq{select trim(a.name),to_char(a.expired_date),round( expired_date - sysdate) as vardate from tlcb_cert_device a};my ($a,$b,$c);my $selStmt = $dbh->prepare($hostSql);  $selStmt->bind_columns(undef, \$a, \$b, \$c);  $selStmt->execute();  while( $selStmt->fetch() ){         if ($c < 30){           my $hint='证书到期日期还有';              #$hint=decode_utf8($hint);               #$a=encode('utf8',"$a");              print "$a"."---"."$b"."---"."$hint"."$c"."\n";;}};  $selStmt->finish;  $dbh->disconnect or warn "DB disconnect failed: $DBI::errstr\n";[oracle@yyjk md]$ perl check_cert.pl 二代支付证书---15-11月-16---证书到期日期还有-239二代支付证书---15-11月-16---证书到期日期还有-239支付宝证书---06-8月 -17---证书到期日期还有25管理员usbkey证书---10-1月 -17---证书到期日期还有-183分析员usbkey证书---10-1月 -17---证书到期日期还有-183

阅读全文
0 0
原创粉丝点击