摘要:二維碼再生活在無處不在,讓我們用最簡單的方法揭開二維碼的神秘面紗在開始之前,我們需要先引入二維碼生成和讀取的包,這里我用的是鏈接密碼在這里我分享一個(gè)我用的,也可以直接去網(wǎng)上下載。二維碼圖片讀取二維碼讀取二維碼的內(nèi)容為
二維碼再生活在無處不在,讓我們用最簡單的方法揭開二維碼的神秘面紗
在開始之前,我們需要先引入二維碼生成和讀取的jar包,這里我用的是qrcodejar
鏈接:https://pan.baidu.com/s/1y5X7... 密碼:6wi0
在這里我分享一個(gè)我用的,也可以直接去網(wǎng)上下載。
新建一個(gè)Java工程,在工程中添加一個(gè)lib目錄,把兩個(gè)Jar包放到lib目錄下,不要忘了add as libiary
在build.gradle中添加配置
compile fileTree(dir:"lib",include:["*.jar"])
(這里我用的是gradle)
準(zhǔn)備工作結(jié)束,馬上開始
生成二維碼public class QRcodeTest { public static void main(String[] args) throws Exception{ Qrcode qrcode = new Qrcode(); qrcode.setQrcodeErrorCorrect("M");//糾錯(cuò)等級(分為L、M、H三個(gè)等級) qrcode.setQrcodeEncodeMode("B");//N代表數(shù)字,A代表a-Z,B代表其它字符 qrcode.setQrcodeVersion(10);//版本 //生成二維碼中要存儲的信息 String qrData ="http://www.baidu.com"; //設(shè)置一下二維碼的像素 int width = 67+12*(10-1); int height = 67+12*(10-1); BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); //繪圖 Graphics2D gs = bufferedImage.createGraphics(); gs.setBackground(Color.WHITE); gs.setColor(Color.BLACK); gs.clearRect(0, 0, width, height);//清除下畫板內(nèi)容 //設(shè)置下偏移量,如果不加偏移量,有時(shí)會導(dǎo)致出錯(cuò)。 int pixoff = 2; byte[] d = qrData.getBytes("gb2312"); if(d.length > 0 && d.length <120){ boolean[][] s = qrcode.calQrcode(d); for(int i=0;i這樣就可以生成一張二維碼圖片,掃描二維碼,會跳轉(zhuǎn)到百度首頁。
二維碼圖片public class MyQrCodeImage implements QRCodeImage { BufferedImage bufferedImage; public MyQrCodeImage(BufferedImage bufferedImage) { this.bufferedImage = bufferedImage; } public int getHeight() { return bufferedImage.getHeight(); } public int getPixel(int arg0, int arg1) { return bufferedImage.getRGB(arg0, arg1); } public int getWidth() { return bufferedImage.getWidth(); } }讀取二維碼public class ReadQrCode { public static void main(String[] args) throws IOException { File file = new File("E:/code/qrcodebd.png"); BufferedImage bufferedImage = ImageIO.read(file); Qrcode qrcode = new Qrcode(); QRCodeDecoder codeDecoder = new QRCodeDecoder(); String result = new String(codeDecoder.decode(new MyQrCodeImage(bufferedImage)),"gb2312"); System.out.println(result); } }讀取二維碼的內(nèi)容為http://www.baidu.com
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/76675.html
摘要:時(shí)間年月日星期五說明本文部分內(nèi)容均來自慕課網(wǎng)。線性堆疊式二維碼示意圖矩陣式二維碼在一個(gè)矩形空間通過黑白像素在矩陣中的不同分布進(jìn)行編碼。 時(shí)間:2017年06月23日星期五說明:本文部分內(nèi)容均來自慕課網(wǎng)。@慕課網(wǎng):http://www.imooc.com教學(xué)示例源碼:無個(gè)人學(xué)習(xí)源碼:https://github.com/zccodere/s... 第一章:二維碼的概念 1-1 二維碼概述...
摘要:最近項(xiàng)目中需要開發(fā)生成二維碼的功能,便于宣傳和使用產(chǎn)品,于是便去研究一番,以下是研究的成果使用生成二維碼二維碼測試內(nèi)容渲染方式有方式兼容和方式計(jì)算模式背景顏色二維碼顏色二維碼糾錯(cuò)級別默認(rèn)查看源碼可以看出生成的二維碼使用生成二維 最近項(xiàng)目中需要開發(fā)生成二維碼的功能,便于宣傳和使用產(chǎn)品,于是便去研究一番,以下是研究的成果 1.使用jquery生成二維碼 ...
摘要:請欣賞語法清單后端掘金語法清單翻譯自的,從屬于筆者的入門與實(shí)踐系列。這篇一篇框架整合友好的文章三后端掘金一理論它始終是圍繞數(shù)據(jù)模型頁面進(jìn)行開發(fā)的。 RxJava 常用操作符 - Android - 掘金 原文地址 http://reactivex.io/documenta... ... RxJava 和 Retrofit 結(jié)合使用完成基本的登錄和注冊功能 - Android - 掘...
Hello 大家好!又要跟大家見面了,上次實(shí)在太無聊了,就在博客園跟大家講述了本人職業(yè)生涯以來的一些工作經(jīng)歷,同時(shí)也分享了一些工作上的心得,沒想到引起那么多朋友的共鳴,也鼓舞了很多初入職場的朋友和有相同經(jīng)歷的朋友,在這里真的很感謝博客園提供這么好的平臺,可以讓每一位園友盡情傾吐。 這次我是分享我本人制作的一個(gè)惡搞程序,說白了就是一個(gè)吸粉引流工具,市面上有很多引流方法,例如最常見的就是色流,哈哈,今...
閱讀 2095·2021-11-02 14:48
閱讀 2771·2019-08-30 14:19
閱讀 2940·2019-08-30 13:19
閱讀 1308·2019-08-29 16:17
閱讀 3245·2019-08-26 14:05
閱讀 2999·2019-08-26 13:58
閱讀 3087·2019-08-23 18:10
閱讀 1114·2019-08-23 18:04