1.添加依赖
<dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.3.0</version> </dependency> <dependency> <groupId>com.google.zxing</groupId> <artifactId>javase</artifactId> <version>3.3.0</version> </dependency>
二维码生产工具类
/** * 生成发送二维码方法 * * @param text 二维码生成规则(二维码可以是任何英文字母加数字生成的二维码) * @param width 宽度 * @param height 高度 * @param filePath 输出图片地址 */ private static void generateQRCodeImage(String text, int width, int height, String filePath) throws WriterException, IOException { //生成二维码类 QRCodeWriter qrCodeWriter = new QRCodeWriter(); //生成的二维码 BitMatrix bitMatrix = qrCodeWriter.encode(text, BarcodeFormat.QR_CODE, width, height); //生产UUID String s = UUID.randomUUID().toString(); //去掉“-”符号 String s1 = s.substring(0, 8) + s.substring(9, 13) + s.substring(14, 18) + s.substring(19, 23) + s.substring(24); //生产UUID当做生产照片的名字 String uuid=s1+".png"; //路径+照片名称 String filePaths = filePath + uuid; //二维码输出地址 Path path = FileSystems.getDefault().getPath(filePaths); //输出二维码图片 MatrixToImageWriter.writeToPath(bitMatrix, "PNG", path); }
调用二维码工具类生产二维码到D盘
public static void main(String[] args) { try { //二维码内的信息 String info = "https://www.baidu.com"; String path="D:\"; //调用二维码工具类接口 generateQRCodeImage(info, 350, 350,path); } catch (WriterException e) { System.out.println("Could not generate QR Code, WriterException :: " + e.getMessage()); } catch (IOException e) { System.out.println("Could not generate QR Code, IOException :: " + e.getMessage()); } }