神刀安全网

用Java生成二维码

用Java生成二维码

由于前段日子小鱼忙于实习和找工作,一直没有时间写博客(其实只是有点懒罢了),千盼万盼的终于到了国庆节啦,终于可以好好写写博客啦。

闲话不多说,今天分享的是我在慕课网上学到的小技巧,用Java来生成自己的二维码。

说实话,一开始看到这个题目我是一脸懵逼的,哇,要用Java来生成二维码啊,会不会很复杂啊,要是学不会的话应该怎么办啊?各种各种的思绪不明所以的飘飞,简直不要太混乱啊。但其实看了之后才发现,真心不难。下面就是详细讲解啦。

第一步,为了生成二维码,必须用到一个jar包,就是叫做zxing的jar包,这个zxing是github上的一个开源项目,可以直接在github上面下载,这里是具体下载网址。

http://github.com/zxing/

而第二步,就是制作jar包了,因为在github上面下载下来的zxing项目只是源码,还不是jar包,所以应该自己先用eclipse将这些源码导出为jar包。下面就是具体步骤了:
一、在eclipse中新建一个工程,名字随意,这里我取为Demo。

用Java生成二维码

二、
1.下载的zxing压缩包解压后的文件如下,将core和javase两个文件夹里面的代码拷到Demo工程中。(core中只要main文件下的代码)

用Java生成二维码

用Java生成二维码

2.拷完之后发现报错了!啊,我知道程序员都特别痛恨红叉叉,但是不要那么紧张,放宽心将它们打包就好,如下所示。

用Java生成二维码

用Java生成二维码

三、愉快的打包完之后就可以开始真正的写代码啦。

  public class QRCode {   public static void main(String[] args){     //设置二维码宽度     int width = 300;     //设置二维码高度     int height = 300;     //设置图片格式     String format = "png";     //设置二维码的信息内容,就是扫了二维码后出现的东西,这里是一个链接     String content ="http://www.baidu.com";     createQRcode(width, height, format, content);   } }  private static void createQRcode(int width, int height, String format,String content) {     // 设置下二维码的参数     Map hint = new HashMap();     // 设置二维码的编码格式     hint.put(EncodeHintType.CHARACTER_SET, "utf-8");     // 设置二维码的纠错等级,等级越高,可存储的数据量就越少     // L,M,Q,H这四个值等级依次有低到高     hint.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);     // 设置二维码的边距,也就是外面的空白边框大小     hint.put(EncodeHintType.MARGIN, 2);     try {          BitMatrix bitMatrix = new MultiFormatWriter().encode(content,BarcodeFormat.QR_CODE, width, height, hint);          Path a = new File("D:/morning/mor.png").toPath();          MatrixToImageWriter.writeToPath(bitMatrix, format, a);     } catch (WriterException e) {         // TODO Auto-generated catch block          e.printStackTrace();     } catch (IOException e) {          // TODO Auto-generated catch block         e.printStackTrace();     }   } }

4.写完代码后只要点击运行,就能够生成你想要的二维码啦,无论是用二维码直接打开网址链接,或者是扫码安装软件,我们都可以随心所欲,是不是很棒呢?


如果喜欢或觉得小鱼的文章不错的话,不要忘记点下喜欢哦。

转载本站任何文章请注明:转载至神刀安全网,谢谢神刀安全网 » 用Java生成二维码

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址