`

二维码生成工具类

 
阅读更多
package com.test.util;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;

import com.google.zxing.BarcodeFormat;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;

/**
 * @类功能说明: 二维码工具类
 * @版本:V1.0
 */

public class QRcodeUtil {
	public static final String BASE_PATH="codeimage\\";
	public static final String IMG_FORMAT="png";
	
	/**
	 * 
	 * 函数功能说明  生成二维码
	 * @参数: @param width 宽度
	 * @参数: @param height 高度
	 * @参数: @param content 二维码内容
	 * @参数: @param imgFormat 图片格式(jpg,png)
	 * @参数: @param stream 写入的流  
	 * @return void   
	 * @throws
	 */
	public static void createQRBarCode(int width ,int height, String content,String imgFormat,OutputStream stream){
		BarcodeFormat format = BarcodeFormat.QR_CODE;
		BitMatrix bitMatrix;
		try {
			content=new String(content.getBytes("UTF-8"),"ISO-8859-1");
			bitMatrix = new MultiFormatWriter().encode(content, format, width, height);
			MatrixToImageWriter.writeToStream(bitMatrix, imgFormat, stream);
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (WriterException e) {
			System.out.println("写二维码错误");
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	public static void main(String[] args) {
		long m = System.currentTimeMillis();
		String loc = "f:/im/twodbarcode/qr/" + m + ".png";//生成的图片存放地址
    	System.out.println("生成的二维码图片存放位置:" + loc);
    	File file = new File(loc);
    	if (!file.exists()) {
    		if (!file.getParentFile().exists()) {
    			file.getParentFile().mkdirs();
			}
    	}
    	try {
    		
			//OutputStream fo = new FileOutputStream(file); //使用file文件保存
    		OutputStream fo = new FileOutputStream(loc); //使用文件字符串保存
			createQRBarCode(100, 100, "hello world 爱上地方撒的方式地方撒的方式地方撒发生地方撒发生地方撒地方","png",fo);
			fo.flush();
			fo.close();
    	} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics