Java如何獲取微信二維碼內的資訊
阿新 • • 發佈:2021-01-26
import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import jp.sourceforge.qrcode.QRCodeDecoder; import jp.sourceforge.qrcode.data.QRCodeImage; /** * 解析二維碼 * @author Wdl * */ public class QRDecode { private static String decode(String qrcodePicfilePath) { System.out.println("開始解析二維碼!!"); /* 讀取二維碼影象資料 */ File imageFile = new File(qrcodePicfilePath); BufferedImage image = null; try { image = ImageIO.read(imageFile); } catch (IOException e) { System.out.println("讀取二維碼圖片失敗: " + e.getMessage()); return null; } /* 解析二維碼 */ QRCodeDecoder decoder = new QRCodeDecoder(); String decodedData = new String( decoder.decode(new J2SEImageGucas(image))); System.out.println("解析內容如下:" + decodedData); return decodedData; } public static void main(String[] args) { QRDecode.decode("D:/test/qr.png"); } } class J2SEImageGucas implements QRCodeImage { BufferedImage image; public J2SEImageGucas(BufferedImage image) { this.image = image; } public int getWidth() { return image.getWidth(); } public int getHeight() { return image.getHeight(); } public int getPixel(int x, int y) { return image.getRGB(x, y); } }
很簡單,所需jar包及目錄文件如下:
執行前,先準備好自己所需要的微信二維碼,放在D盤test目錄下,執行結果:
這就是微信二維碼裡面的資訊,根據這個資訊我們可以生成自己的二維碼。
jar包及原始碼:QRDecode