Java编程将字符转换成相应的数字,然后制作二维码,存储在excel中。
然后用下面的类把它变成二维码。
/*
*要更改此许可证头,请在项目属性中选择许可证头。
*要更改此模板文件,请选择工具|模板
*并在编辑器中打开模板。
*/
包装二维码;
导入com . SWE take . util . QR code;
导入javax . imageio . imageio;
导入Java . awt . *;
导入Java . awt . image . buffered image;
导入Java . io . file;
导入Java . io . io exception;
import Java . io . unsupportedencodingexception;
/**
*用IntelliJ IDEA创建。
*日期:2003年9月65438日
*时间:11:31上午
*/
公共类QRCodeTest {
私有静态int DEFAULT _ WIDTH
private static int UNIT _ WIDTH = 10;
公共静态void createImg(){
QR code QR code = new QR code();
//纠错能力
//L级中7%的代码可以纠正。
//M级15%的字码可以纠正。
//Q级25%的代码可以纠正。
//H级30%的代码可以纠正。
//二维码具有容错性。如果二维码图形损坏,仍然可以被机器读取,最多7%~30%的区域损坏。
//相对来说,容错率越高,二维码的图形面积越大。所以15%的容错性一般是要妥协的。
QR code . setqrcodeerrorcorrect(' M ');/* L ',' M ',' Q ',' H' */
QR code . setqrcodencode(' B ');/* "N "、" A "或其他*/
QR code . setqrcodevision(3);/* 0-20 */
String testString = "这里是要转换的文本";
byte[]buff = null;
尝试{
buff = teststring . getbytes(" utf-8 ");
} catch(UnsupportedEncodingException e){
e . printstacktrace();
}
boolean[][]bRect = QR code . cal QR code(buff);
DEFAULT _ WIDTH = brect . length * UNIT _ WIDTH;
BufferedImage bi = new buffered image(DEFAULT_WIDTH,DEFAULT _ WIDTH,buffered image。TYPE _ INT _ RGB);
//int unit WIDTH = DEFAULT _ WIDTH/brect . length;
//创建图形
graphics 2d g = bi . create graphics();
//设置背景
g.setBackground(颜色。白色);
g.clearRect(0,0,DEFAULT_WIDTH,DEFAULT _ WIDTH);
g.setColor(颜色。黑色);
if(buff . length & gt;0 & amp& ampbuff.length & lt123){
for(int I = 0;我& lt角砾岩长度;i++){
for(int j = 0;j & lt角砾岩长度;j++){
if (bRect[j][i]) {
g.fillRect(j*UNIT_WIDTH,i*UNIT_WIDTH,UNIT_WIDTH-1,UNIT _ WIDTH-1);
}
}
}
}
g . dispose();
bi . flush();
string file path = " QR code . png ";
File f =新文件(File path);
尝试{
ImageIO.write(bi," png ",f);
} catch (IOException e) {
e . printstacktrace();
}
System.out.println("创建二维码完成!");
}
}