解析微信二维码内的信息

版权声明:················································································ 爱学习的小伙伴请移步新世界:http://www.itoak.cn ················································································ https://blog.csdn.net/u012534326/article/details/53863661

这两天对微信二维码比较感兴趣,所以就花了点时间学习了一下,下面我将先介绍一下如何解析微信二维码内的信息。

直接上代码:

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

猜你喜欢

转载自blog.csdn.net/u012534326/article/details/53863661