資源簡介
java工具實現類-根據網站鏈接url,生成二維碼圖片,存放本地目錄

代碼片段和文件信息
package?llj.mf.utils;
import?java.awt.image.BufferedImage;
import?java.io.File;
import?java.io.IOException;
import?java.io.OutputStream;
import?java.text.SimpleDateFormat;
import?java.util.Date;
import?java.util.HashMap;
import?java.util.Map;
import?javax.imageio.ImageIO;
import?javax.swing.filechooser.FileSystemView;
import?com.google.zxing.BarcodeFormat;
import?com.google.zxing.EncodeHintType;
import?com.google.zxing.MultiFormatWriter;
import?com.google.zxing.common.BitMatrix;
public?class?QrCodeUtil?{
public?static?void?main(String[]?args)?{
String?url?=?“http://baidu.com“;
String?path?=?FileSystemView.getFileSystemView().getHomeDirectory()?+?File.separator?+?“testQrcode“;
String?fileName?=?new?SimpleDateFormat(“yyyyMMddHHmmss“).format(new?Date())?+?“.jpg“;
createQrCode(url?path?fileName);
}
public?static?String?createQrCode(String?url?String?path?String?fileName)?{
try?{
Map?hints?=?new?HashMap<>();
hints.put(EncodeHintType.CHARACTER_SET?“UTF-8“);
BitMatrix?bitMatrix?=?new?MultiFormatWriter().encode(url?BarcodeFormat.QR_CODE?400?400?hints);
File?file?=?new?File(path?fileName);
if?(file.exists()?||?((file.getParentFile().exists()?||?file.getParentFile().mkdirs())?&&?file.createNewFile()))?{
writeToFile(bitMatrix?“jpg“?file);
System.out.println(“搞定:“?+?file);
}
}?catch?(Exception?e)?{
e.printStackTrace();
}
return?null;
}
static?void?writeToFile(BitMatrix?matrix?String?format?File?file)?throws?IOException?{
BufferedImage?image?=?toBufferedImage(matrix);
if?(!ImageIO.write(image?format?file))?{
throw?new?IOException(“Could?not?write?an?image?of?format?“?+?format?+?“?to?“?+?file);
}
}
static?void?writeToStream(BitMatrix?matrix?String?format?OutputStream?stream)?throws?IOException?{
BufferedImage?image?=?toBufferedImage(matrix);
if?(!ImageIO.write(image?format?stream))?{
throw?new?IOException(“Could?not?write?an?image?of?format?“?+?format);
}
}
private?static?final?int?BLACK?=?0xFF000000;
private?static?final?int?WHITE?=?0xFFFFFFFF;
private?static?BufferedImage?toBufferedImage(BitMatrix?matrix)?{
int?width?=?matrix.getWidth();
int?height?=?matrix.getHeight();
BufferedImage?image?=?new?BufferedImage(width?height?BufferedImage.TYPE_INT_RGB);
for?(int?x?=?0;?x? for?(int?y?=?0;?y? image.setRGB(x?y?matrix.get(x?y)???BLACK?:?WHITE);
}
}
return?image;
}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????????0??2018-10-23?14:23??sss.html
?????文件???????35417??2018-10-15?14:44??testQrcode\sss.html
?????目錄???????????0??2018-10-16?11:15??testQrcode\
?????目錄???????????0??2017-04-16?11:38??Javademon\
?????文件??????538421??2016-08-10?12:00??Javademon\core-3.1.0.jar
?????文件????????2558??2017-04-16?11:33??Javademon\QrCodeUtil.java
評論
共有 條評論