package com.hello.java;
import java.io.File;
import java.nio.file.Path;
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 Test {
public static void main(String[] args) {
int width=300;
int height=300;
String format="png";
String content="www.imook.com";
//定义参数
HashMap his=new HashMap();
his.put(EncodeHintType.CHARACTER_SET, "utf-8");
his.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
his.put(EncodeHintType.MARGIN, 2);
try {
BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height,his);
Path file=new File("D:/ps/img.png").toPath();
MatrixToImageWriter.writeToPath(bitMatrix, format, file);
} catch (Exception e) {
e.printStackTrace();
}
}
}
看看MatrixToImageWriter里面是否有writeToPath()这个方法。我建议你可以用writeToFile()
只需将Path file=new File("D:/ps/img.png").toPath();变为
File file = new File("D:/ps/img.png");
这样就可以了。希望能帮到你了
D:/ps/img.png这个路径是否存在,权限是否正确
e.printStackTrace();
输出什么
为什么Path报错呢?