java二维码生成的方法
作者:ITqingliang 时间:2022-08-02 22:07:28
本文实例为大家分享了java二维码的实现代码,供大家参考,具体内容如下
这次用到的jar包是zxing,没有用到core的jar包
先导入zxing.jar包
生成二维码
package cn.huse.erweima;
import java.io.File;
import java.util.HashMap;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
/**
* 生成二维码
*
*/
public class CreateQRCode {
public static void main(String[] args) {
int width = 300;
int height = 300;
String format = "gif";
String content = "www.baidu.com";
//定义二维码的参数
HashMap hints = new HashMap<>();
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
try {
BitMatrix matrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height,hints);
File file = new File("e:"+File.separator+"new.gif");
MatrixToImageWriter.writeToFile(matrix, format, file);
} catch (Exception e) {
e.printStackTrace();
}
}
}
解析二维码
package cn.huse.erweima;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import javax.imageio.ImageIO;
import com.google.zxing.BinaryBitmap;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatReader;
import com.google.zxing.NotFoundException;
import com.google.zxing.Result;
import com.google.zxing.client.j2se.BufferedImageLuminanceSource;
import com.google.zxing.common.HybridBinarizer;
//解析二维码
public class ReadQRCode {
public static void main(String[] args) {
MultiFormatReader formatReader = new MultiFormatReader();
File file = new File("e:"+File.separator+"new.gif");
try {
BufferedImage image = ImageIO.read(file);
BinaryBitmap binaryBitmap = new BinaryBitmap(new HybridBinarizer(new BufferedImageLuminanceSource(image)));
HashMap hints = new HashMap<>();
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
Result result = formatReader.decode(binaryBitmap,hints);
System.out.println(result.toString());
System.out.println(result.getBarcodeFormat());
System.out.println(result.getText());
} catch (NotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
标签:java,二维码
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
java之使用多线程代替for循环(解决主线程提前结束问题)
2021-11-21 01:23:55
Maven搭建springboot项目的方法步骤
2022-08-08 09:50:09
![](https://img.aspxhome.com/file/2023/9/67149_0s.png)
带你重新认识MyBatis的foreach
2023-11-21 08:44:54
C#获取图片的后缀名解析
2023-02-13 09:35:58
C语言实现两个矩阵相乘
2023-07-22 12:41:20
![](https://img.aspxhome.com/file/2023/6/103076_0s.png)
android studio 3.6.1导入项目报错提示无法下载classpath里的内容
2021-09-28 11:02:57
C# XML基础入门小结(XML文件内容增删改查清)
2022-10-18 17:12:02
基于java查找并打印输出字符串中字符出现次数
2022-07-28 19:45:47
解决Spring Cloud Feign 请求时附带请求头的问题
2022-12-11 04:29:46
java查找图中两点之间所有路径
2022-10-04 03:08:11
完美解决idea moudle没有蓝色的小方块的问题
2021-05-28 16:09:03
![](https://img.aspxhome.com/file/2023/7/68197_0s.jpg)
C# Winform 调用系统接口操作 INI 配置文件的代码
2023-03-04 11:49:54
Unity shader实现遮罩效果
2023-06-28 10:20:09
![](https://img.aspxhome.com/file/2023/0/77230_0s.jpg)
springboot结合maven配置不同环境的profile方式
2022-05-28 12:00:16
![](https://img.aspxhome.com/file/2023/6/63416_0s.png)
ContentProvider启动流程示例解析
2023-07-31 03:57:34
Java实现图片验证码具体代码
2021-06-30 13:16:35
![](https://img.aspxhome.com/file/2023/9/60989_0s.jpg)
详解spring boot rest例子
2021-06-02 21:54:46
![](https://img.aspxhome.com/file/2023/1/73041_0s.jpg)
Java实现单链表反转的多种方法总结
2023-11-11 02:28:08
![](https://img.aspxhome.com/file/2023/1/58721_0s.png)
Java:"失效"的private修饰符
2021-06-28 19:56:48
java实现将结果集封装到List中的方法
2021-10-27 22:29:45