java代碼產生二維碼,java代碼

來源:互聯網
上載者:User

java代碼產生二維碼,java代碼

java代碼產生二維碼一般步驟

常用的是Google的Zxing來產生二維碼,產生的一般步驟如下:

一、下載zxing-core的jar包:

 

二、需要建立一個MatrixToImageWriter類,此類google的源碼中提供了,為了使用方便,下面是類中的代碼,可以直接複製來使用:

private static final int BLACK = 0xFF000000;   private static final int WHITE = 0xFFFFFFFF;    private MatrixToImageWriter() {}       public 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 < width; x++) {       for (int y = 0; y < height; y++) {         image.setRGB(x, y, matrix.get(x, y) ? BLACK : WHITE);       }     }     return image;   }       public 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);     }   }       public 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);     }   }

  三、建立一個啟動類,用來產生二維碼:(注意:二維碼訪問的url地址需要注意,如果書寫成www格式的,需要瀏覽器掃一掃,同樣的地址寫成http格式的可以用任何掃碼器掃都可以)

public static void main(String[] args) {try {             //二維碼訪問的網址地址1:www.baidu.com或者http://baidu.com     String content = "http://baidu.com";     //二維碼圖片儲存的路徑     String path = "D:/test";     MultiFormatWriter multiFormatWriter = new MultiFormatWriter();     Map hints = new HashMap();     hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");     BitMatrix bitMatrix = multiFormatWriter.encode(content, BarcodeFormat.QR_CODE, 100, 100,hints);     File file1 = new File(path,"百度首頁.jpg");     MatrixToImageWriter.writeToFile(bitMatrix, "jpg", file1);      } catch (Exception e) {     e.printStackTrace(); }}

  四、經過親自測試可以產生二維碼,需要特別注意的是:

  二維碼訪問的url地址書寫,一般情況下都是寫成http格式的;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.