使用JAVA生成二维码
来源:互联网 发布:战地之王透视源码 编辑:程序博客网 时间:2024/06/14 03:33
今天跟大家分享一下,如何使用JAVA生成二维码,废话不多说,上图
第一步,添加项目所需的 maven依赖
会自动导入core-3.2.0.jar和javase-3.2.0.jar两个jar包
package com.zz.QRcode.utils;import java.io.File;import java.io.IOException;import java.util.Hashtable;import com.google.zxing.BarcodeFormat;import com.google.zxing.EncodeHintType;import com.google.zxing.MultiFormatWriter;import com.google.zxing.WriterException;import com.google.zxing.client.j2se.MatrixToImageWriter;import com.google.zxing.common.BitMatrix;public class QRcodeUtil {/** * @param content 二维码内容 * @param width 二维码图片的宽度 * @param height 二维码图片的高度 * @param format 二维码图片的格式 * @param path 二维码写入的路径 */public static void createQRcode(String content,int width,int height,String format,String file){Hashtable<EncodeHintType, String> hints = new Hashtable<EncodeHintType, String>();// 设置字符编码hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");//创建二维码模型try {// 生成二维码BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height, hints);MatrixToImageWriter.writeToPath(bitMatrix, format, new File(file).toPath());} catch (IOException e) {e.printStackTrace();} catch (WriterException e) {e.printStackTrace();}}/** * @param content 二维码内容 * @param format 二维码图片的格式 * @param path 二维码写入的路径 */public static void createQRcodeDefaultSize(String content,String format,String file){createQRcode(content, 300, 300, format, file);}/** * @param content 二维码内容 * @param path 二维码写入的路径 */public static void createPngQRcodeDefaultSize(String content,String file){createQRcodeDefaultSize(content, "png", file);}/** * @param content 二维码内容 * @param path 二维码写入的路径 * @param width 二维码图片的宽度 * @param height 二维码图片的高度 */public static void createPngQRcode(String content,String file,int width,int height){createQRcode(content, width, height, "png", file);}}
这里使用的是MatrixToImageWriter类,该类由goole提供,可以直接使用
第三步,测试生成二维码
package com.zz.QRcode.test;import com.zz.QRcode.utils.QRcodeUtil;public class Test {@org.junit.Testpublic void test() {String content = "http://urfunny.xyz";String file = "F:/壁纸/test.png";//使用默认大小的png格式生成二维码QRcodeUtil.createPngQRcodeDefaultSize(content,file);}}
此时我们查看生成的二维码
第四步,用手机扫描二维码
第五步,使用JAVA解析二维码
在工具类中添加方法
/** * * @param file 二维码图片所在的路径 * @return 返回解析到的二维码内容 */public static String decodeQRcode(String file){String content = null;try {//创建图片缓存流BufferedImage image = ImageIO.read(new File(file));LuminanceSource source = new BufferedImageLuminanceSource(image); Binarizer binarizer = new HybridBinarizer(source); BinaryBitmap binaryBitmap = new BinaryBitmap(binarizer); //设置解析提示 Map<DecodeHintType, Object> hints = new HashMap<DecodeHintType, Object>(); //设置字符编码 hints.put(DecodeHintType.CHARACTER_SET, "UTF-8"); // 对图像进行解码 Result result = new MultiFormatReader().decode(binaryBitmap, hints); content = result.getText();} catch (IOException e) {e.printStackTrace();} catch (NotFoundException e) {e.printStackTrace();} return content;}第六步,使用JAVA解析二维码
package com.zz.QRcode.test;import com.zz.QRcode.utils.QRcodeUtil;public class Test {@org.junit.Testpublic void test() {String file = "F:/壁纸/test.png";//使用java解析二维码String content = QRcodeUtil.decodeQRcode(file);System.out.println(content);}}
控制台打印结果
0 0
- 使用JAVA生成二维码
- 使用Java生成二维码
- Java实现二维码-使用Zxing生成二维码
- java 使用zxing 生成二维码
- java 使用zxing生成二维码
- java 使用zxing 生成二维码
- java使用zxing生成二维码
- 【JAVA】使用ZXing生成二维码
- 使用Java、Servlet 生成二维码
- java 使用zxing生成二维码
- java 使用zxing 生成二维码
- 使用java语言生成二维码
- java 使用ZXing生成二维码
- java使用zxing生成二维码
- java二维码 生成二维码
- 使用 Java 生成二维码图像,解析二维码图像.
- java实现二维码-使用jquery-qrcode方式生成二维码
- 【java】二维码的生成和使用
- ArcEngine开发中内存不能释放浅析
- CAP原理和BASE思想
- 提高代码质量的12个技巧
- 在开发微信支付过程遇到的坑
- 玲珑杯#11 D 1099
- 使用JAVA生成二维码
- 玲珑杯#11 D 1099
- 对象和类,公有类和私有类,构造函数和析构函数,const成员函数,this指针,对象数组,类作用域,抽象数据
- JAVA学习之打印空心菱形
- 博客搭建教程(持续更新)
- 17款最佳的代码审查工具
- poj1250 Tanning Salon
- MLlib分类算法实战演练--Spark学习(机器学习)
- 各种DP的总结