zoukankan      html  css  js  c++  java
  • Wide character in print at check_cert.pl line 18.

    [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"."
    ";;
    
    }};  
    $selStmt->finish;  
    $dbh->disconnect or warn "DB disconnect failed: $DBI::errstr
    ";
    
    [oracle@yyjk md]$ perl check_cert.pl 
    Wide character in print at check_cert.pl line 18.
    二代支付证书---15-11月-16---证书到期日期还有-239
    Wide character in print at check_cert.pl line 18.
    二代支付证书---15-11月-16---证书到期日期还有-239
    Wide character in print at check_cert.pl line 18.
    支付宝证书---06-8月 -17---证书到期日期还有25
    Wide character in print at check_cert.pl line 18.
    管理员usbkey证书---10-1月 -17---证书到期日期还有-183
    Wide 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"."
    ";;
    
    }};  
    $selStmt->finish;  
    $dbh->disconnect or warn "DB disconnect failed: $DBI::errstr
    ";
    
    
    [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

  • 相关阅读:
    jQuery自学笔记(四):jQuery DOM节点操作
    jQuery自学笔记(三):jQuery动画效果
    jQuery自学笔记(二):jQuery选择器
    面试记录与复盘总结
    wh-研发功能复盘
    st项目-要素标记功能的实现以及经验总结
    ST项目经验总结2
    S台项目记录-1
    统计模型项目开发经验汇总
    开发规范
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349646.html
Copyright © 2011-2022 走看看