1.java代码
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;
import java.io.IOException;
import java.nio.file.FileSystems;
import java.nio.file.Path;
import java.util.HashMap;
import java.util.Map;
public class QrCode {
public static void main(String[] args) throws WriterException, IOException {
generateQRCode("张三");//扫码得到的内容
}
private static void generateQRCode(String content) throws WriterException, IOException {
int width = 200;//二维码宽
int height = 200;//二维码高
Map<EncodeHintType,Object> hintTypeObjectMap = new HashMap<>();
hintTypeObjectMap.put(EncodeHintType.CHARACTER_SET,"UTF-8");
//创建一个矩阵对象
BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE,width,height,hintTypeObjectMap);
String filePate = "h://"; //本地路径
String fileName = "QRCode.png";//图片名称
Path path = FileSystems.getDefault().getPath(filePate,fileName);
//将矩阵对象生成二维码图片
MatrixToImageWriter.writeToPath(bitMatrix,"png",path);
}
}
2.pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.java.code</groupId>
<artifactId>code</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- google生成二维码依赖 -->
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>core</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>javase</artifactId>
<version>3.3.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 编译插件 -->
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<!-- 插件的版本 -->
<version>3.5.1</version>
<!-- 编译级别 -->
<configuration>
<source>1.8</source>
<target>1.8</target>
<!-- 编码格式 -->
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
run一下即可生成本地的二维码图片