基本信息
源码名称:java 生成二维码图片 示例源码
源码大小:1.89M
文件格式:.zip
开发语言:Java
更新时间:2018-05-11
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

java生成二维码


生成的二维码如下图:


package com.test;

import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.util.Date;

import javax.imageio.ImageIO;

import com.swetake.util.Qrcode;

public class QRCodeEncoderTest {
	/** Creates a new instance of QRCodeEncoderTest */
	public QRCodeEncoderTest() {
	}

	public static void create_image(String sms_info) throws Exception {
		try {
			Qrcode testQrcode = new Qrcode();
			testQrcode.setQrcodeErrorCorrect('M');
			testQrcode.setQrcodeEncodeMode('B');
			testQrcode.setQrcodeVersion(7);
			String testString = sms_info;
			byte[] d = testString.getBytes("gbk");
			System.out.println(sms_info "字符串长度:" d.length);
			// BufferedImage bi = new BufferedImage(98, 98,
			// BufferedImage.TYPE_INT_RGB);
			BufferedImage bi = new BufferedImage(98, 98,
					BufferedImage.TYPE_BYTE_BINARY);
			Graphics2D g = bi.createGraphics();
			g.setBackground(Color.WHITE);
			g.clearRect(0, 0, 98, 98);
			g.setColor(Color.BLACK);
			// 限制最大字节数为120
			if (d.length > 0 && d.length < 120) {
				boolean[][] s = testQrcode.calQrcode(d);
				for (int i = 0; i < s.length; i  ) {
					for (int j = 0; j < s.length; j  ) {
						if (s[j][i]) {
							g.fillRect(j * 2   3, i * 2   3, 2, 2);
						}
					}
				}
			}
			g.dispose();
			bi.flush();
			File directory = new File("");//设定为当前文件夹
			System.out.println("二维码保存目录:" directory.getAbsolutePath());//获取绝对路径
			File f = new File(directory.getAbsolutePath() "\\"   sms_info   ".jpg");
			if (!f.exists()) {
				f.createNewFile();
			}
			// 创建图片
			ImageIO.write(bi, "jpg", f);
		} // end try
		catch (Exception e) {
			e.printStackTrace();
		} // end catch
	}

	public static void main(String[] args) throws Exception {
		System.out.println(new Date());
		QRCodeEncoderTest.create_image("test");
		System.out.println(new Date());
	}
	// end main
}