当前位置: 首页 > news >正文

java 解析二维码工具类

mavn  pom.xml

<dependency>
    <groupId>com.google.zxing</groupId>
    <artifactId>javase</artifactId>
    <version>3.5.3</version>
</dependency>

java 测试类


import com.google.zxing.BinaryBitmap;
import com.google.zxing.common.HybridBinarizer;
import com.google.zxing.MultiFormatReader;
import com.google.zxing.NotFoundException;
import com.google.zxing.Result;
import com.google.zxing.client.j2se.BufferedImageLuminanceSource;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class QRCodeReader {

    public static String decodeQRCode(String filePath) {
        try {
            BufferedImage bufferedImage = ImageIO.read(new File(filePath));
            BinaryBitmap binaryBitmap = new BinaryBitmap(new HybridBinarizer(new BufferedImageLuminanceSource(bufferedImage)));
            Result result = new MultiFormatReader().decode(binaryBitmap);
            return result.getText();
        } catch (NotFoundException e) {
            System.err.println("No QR code found in the image.");
        } catch (IOException e) {
            System.err.println("Error reading the image file: " + e.getMessage());
        }
        return null;
    }

    public static void main(String[] args) {
        String filePath = QRCodeReader.class.getResource("/861393067237070.png").getPath();
        String qrCodeText = decodeQRCode(filePath);
        if (qrCodeText != null) {
            System.out.println("Decoded QR Code: " + qrCodeText);
        } else {
            System.out.println("Failed to decode QR code.");
        }
    }
}

重点关注: 

 main方法

相关文章:

  • 数据结构--红黑树
  • 第四章 表单(2)- 输入组件
  • Python 变量作用域、global 关键字与闭包作用域深度解析 第三部分
  • vue中keep-alive组件的使用
  • Web前端考核 JavaScript知识点详解
  • 《可爱风格 2048 游戏项目:HTML 实现全解析》
  • 本地部署Stable Diffusion生成爆火的AI图片
  • [深度学习]图片分类任务
  • 新版本Springboot的lombok导入依赖出现问题的解决办法
  • C++友元:跨墙访问的三种姿势
  • MySQL小练习
  • 高速电路中的时序设计
  • 哪吒汽车:一边熬夜蹦迪,一边找药投医
  • easyExcel2.2.10中为0数据显示为空
  • 基于深度学习的行人人脸识别系统的设计与实现
  • 【 <二> 丹方改良:Spring 时代的 JavaWeb】之 Spring Boot 中的日志管理:Logback 的集成
  • LeetCode-215. 数组中的第K个最大元素
  • 解决MediaMetadataRetriever.finalize()超时问题
  • CUDA与GPU架构:解锁并行计算的终极奥义
  • 2025中国AI Agent 行业研究报告|附文件下载
  • 视频丨习近平主席专机抵达莫斯科,俄战机升空护航
  • 解放军仪仗司礼大队仪仗分队参加纪念苏联伟大卫国战争胜利80周年阅兵活动
  • AI世界的年轻人|横跨教育与产业,他说攻克前沿问题是研究者的使命
  • 巴基斯坦宣布禁止与印度的进口贸易
  • 原油价格战一触即发?沙特不想再忍,领衔多个产油国加速增产
  • 巴菲特批评贸易保护主义:贸易不该被当成武器来使用