Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java 二维码

作者:菠蘿。d海   发布日期:2026-06-26   浏览:118

import com.google.zxing.BarcodeFormat;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;

import java.io.IOException;
import java.nio.file.FileAlreadyExistsException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class QRCodeGenerator {

    private static final String QR_CODE_IMAGE_PATH = "./MyQRCode.png";

    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);

        Path path = FileSystems.getDefault().getPath(filePath);
        MatrixToImageWriter.writeToPath(bitMatrix, "PNG", path);
    }

    public static void main(String[] args) {
        try {
            generateQRCodeImage("https://www.example.com", 350, 350, QR_CODE_IMAGE_PATH);
            System.out.println("QR Code generated successfully.");
        } catch (WriterException | IOException e) {
            System.err.println("Could not generate QR Code, WriterException :: " + e.getMessage());
        }
    }
}

解释说明

  1. 导入必要的库

    • com.google.zxing.BarcodeFormat 和其他相关类用于生成二维码。
    • java.nio.file.* 用于文件操作。
  2. 定义常量

    • QR_CODE_IMAGE_PATH:保存生成的二维码图片的路径。
  3. generateQRCodeImage 方法

    • 接受四个参数:要编码的文本、二维码的宽度和高度、保存二维码图片的路径。
    • 使用 QRCodeWriter 类生成二维码矩阵(BitMatrix)。
    • 使用 MatrixToImageWriter 将矩阵写入指定路径的 PNG 文件。
  4. main 方法

    • 调用 generateQRCodeImage 方法生成二维码,并打印成功信息。
    • 捕获并处理可能的异常,如二维码生成失败或文件写入失败。

此代码片段展示了如何使用 ZXing 库生成一个简单的二维码,并将其保存为 PNG 文件。请确保你已经添加了 ZXing 库到你的项目中。

上一篇:java随机生成字符串

下一篇:java调用第三方接口方法流程

大家都在看

java url decode

java判断是windows还是linux

java原始数据类型

java连接数据库的代码

java date类型比较大小

java djl

ubuntu 卸载java

es java api

java常用的设计模式有哪些

java list 查找

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站