需要的jar包下载地址 http://download.csdn.net/detail/sinat_22750705/9748085package BasicsTest;import com.swetake.util.Qrcode;import jp.sourceforge.qrcode.QRCodeDecoder;import jp.sourceforge.qrcode.data.QRCodeImage;import jp.sourceforge.qrcode.exception.DecodingFailedException;import javax.imageio.ImageIO;import java.awt.*;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;/** * 二维码生成 * Created by xs on 2017/2/6. */public class QRCode { /** * @param args the command line arguments */ public static void main(String[] args) { QRCode handlers = new QRCode(); String imgPaths = "qrCodeTest.png"; String decoderContent = handler.decoderQRCode(imgPaths); System.out.PRintln("解析结果如下:"); System.out.println(decoderContent); System.out.println("========decoder success!!!"); } /** * 解码二维码 * @param imgPath * @return String */ public String decoderQRCode(String imgPath) { // QRCode 二维码图片的文件 File imageFile=new File(imgPath); //BufferedImage 提供创建和修改图像的各种类 BufferedImage bufImg = null; String decodedData = null; try { bufImg = ImageIO.read(imageFile); QRCodeDecoder decoder = new QRCodeDecoder(); decodedData = new String(decoder.decode(new J2SEImage(bufImg))); } catch (IOException e) { System.out.println("Error: " + e.getMessage()); e.printStackTrace(); } catch (DecodingFailedException dfe) { System.out.println("Error: " + dfe.getMessage()); dfe.printStackTrace(); } return decodedData; } //二维码图片 class J2SEImage implements QRCodeImage { BufferedImage bufImg; public J2SEImage(BufferedImage bufImg) { this.bufImg = bufImg; } public int getWidth() { return bufImg.getWidth(); } public int getHeight() { return bufImg.getHeight(); } public int getPixel(int x, int y) { return bufImg.getRGB(x, y); } }}结果如下:
新闻热点
疑难解答