简单二维码的生成

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一下即可生成本地的二维码图片

猜你喜欢

转载自blog.csdn.net/weixin_44152883/article/details/86497306