二维码生成与读取

public class create {

      public static void main(String[] args) {
         int  width =300;
         int height=300;
         String format="png";
         String content="www.kumen200.com";
         //定义所要的数据
         HashMap his = new HashMap();
         his.put(EncodeHintType.CHARACTER_SET, "utf-8");
         his.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
         his.put(EncodeHintType.MARGIN, 2);
        
         //生产二维码
         try {
            BitMatrix matrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height);
            Path  file =new File("D:/zxing/zxing.png").toPath();
            //File file =new File("D:/zxing/zxing/zxing.png");
        try {
            //MatrixToImageWriter.writeToFile(matrix, format, file);
            
            MatrixToImageWriter.writeToPath(matrix, format, file);
        } catch (IOException e) {
        
            e.printStackTrace();
        }
        } catch (WriterException e) {
        
            e.printStackTrace();
        }
    }
}

//读取二维码

public class Read {
     static BinaryBitmap bp;
     public static void main(String[] args) throws IOException, NotFoundException {
         MultiFormatReader fr = new MultiFormatReader();
         // fr.decode(image);
         File file = new File("D:/zxing/zxing.png");
        // BufferedImage image = ImageIO.read(file);
        // BufferedImage image = ImageIO.read(new File("D:/zxing/zxing.png"));
         bp =new BinaryBitmap(new HybridBinarizer(new BufferedImageLuminanceSource(ImageIO.read(file))));
         //
         HashMap hints = new HashMap();
         hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
        
        Result result= fr.decode(bp, hints);
         fr.decode(bp);
         System.out.println(result.getRawBytes());
         System.out.println(result.toString());
         System.out.println(result.getText());
         System.out.println(result.getBarcodeFormat());
        
        
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值