您的位置:首页 > 编程语言 > Java开发

java解析二维码

2015-09-15 21:51 477 查看
http://sourceforge.jp/projects/qrcode/  下载qrcode.jar
,用于解析二维码。

package demo2;

import java.awt.image.BufferedImage;

import jp.sourceforge.qrcode.data.QRCodeImage;

/**

 * 

 * @Description: 获取图像信息

 * @author WEISG

 * @date 2015年9月15日 下午9:37:24 

 *

 */

public class J2SEImageGucas implements QRCodeImage {

BufferedImage image;

public J2SEImageGucas() {
}

public J2SEImageGucas(BufferedImage image) {
this.image = image;
}

@Override
public int getHeight() {
return image.getHeight();
}

@Override
public int getPixel(int x, int y) {
return image.getRGB(x, y);
}

@Override
public int getWidth() {
return image.getWidth();
}

}

package demo2;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

import javax.imageio.ImageIO;

import jp.sourceforge.qrcode.QRCodeDecoder;

/**

 * 

 * @Description: 二维码工具类 

 * @author WEISG

 * @date 2015年9月15日 下午9:35:22 

 *

 */

public class QRCodeUtils {
/**

* @Description: 解析二维码 
* @author WEISG
* @date 2015年9月15日 下午9:33:31 
* @param qrcodePicfilePath 二维码文件的路径
* @return
*
*/
public static String decode(String qrcodePicfilePath){
/* 读取二维码图像数据 */
File imageFile = new File(qrcodePicfilePath);
BufferedImage image = null;
try {
image = ImageIO.read(imageFile);
} catch (IOException e) {
System.out.println("Decoding failed, read QRCode image error: " + e.getMessage());
return null;
}
/* 解二维码 */
QRCodeDecoder decoder = new QRCodeDecoder();
String decodedData = new String(decoder.decode(new J2SEImageGucas(image)));
return decodedData;
}

public static void main(String[] args) {
QRCodeDecoder decoder = new QRCodeDecoder();
File imageFile = new File("F:/wbsj/qrcorde/201509152144429552.png");
BufferedImage image = null;
try {
image = ImageIO.read(imageFile);
} catch (IOException e) {
System.out.println("Error: " + e.getMessage());
}

System.out.println("识别二维码:");

String decodedData = new String(decoder.decode(new J2SEImageGucas(image)));
System.out.println(decodedData);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: