目录

二维码原理

将String转成char

将char转成二进制码

补码

存储

在界面上画出二维码


二维码原理

二维码图像存储的信息属于字符信息,如果信息少,黑白块数量也少,反之就同理。

我们用二进制01 来表示成它的信息码

字符型char 在java占2byte,16bit

0000 0000 0000 0000 -字符

public class StringTest {public static void main(String[] args) {char c = 'A';System.out.println(c);char x = 100;// 100 = d ASCII 字符编码System.out.println(x);char g = 33;System.out.println(g);int count = 0;//打印 一万个字符for(char i = 20000;i<30000;i++) {count++;if(count == 30) {System.out.println();count = 0;}System.out.print(i);}}
}

将String转成char

//将String 转成charpublic static void main (String[] args) {String str = "http://www.bilibili.com";int strlenght = str.length();int[][] binaryArr = new int[strlenght][8];for(int i = 0;i<strlenght;i++) { char c = str.charAt(i);System.out.println(c);

将char转成二进制码

//将char转成二进制码//integer 将字符转二进制码String cbinarycode = Integer.toBinaryString(c);System.out.println(cbinarycode);

补码

 //获取二进制码编码长度int cbinaryCodeLenght = cbinarycode.length();//在前补码0 直到长度为8while(cbinaryCodeLenght < 8 ) {cbinarycode = "0"+cbinarycode;cbinaryCodeLenght++;}System.out.println(cbinarycode);

存储

 int[][] binaryArr = new int[strlenght][8];// 将  补好二进制码 存储起来// 声明二维数组for(int j = 0;j<cbinaryCodeLenght;j++) {binaryArr[i][j] = cbinarycode.charAt(j);}}//testSystem.out.println("二进制矩阵");for(int i = 0;i<strlenght;i++) {for(int j = 0;j<8;j++) {System.out.print(binaryArr[i][j]);}System.out.println();}

在界面上画出二维码

StringUI

import java.awt.Color;
import java.awt.Graphics;import javax.swing.JFrame;public class StringUI extends JFrame{public void initUI() {JFrame jf = new JFrame();jf.setTitle("字符串二维码");jf.setSize(900,700);jf.setLocationRelativeTo(null);jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jf.setVisible(true);}public void paint(Graphics g) {super.paint(g);g.setColor(Color.blue);g.fillRect(0, 0, this.getWidth(), this.getHeight());QRCode qrCode = new QRCode();int[][] arr = qrCode.staringToBinary("");//将转成for(int i = 0;i<arr.length;i++) {for(int j = 0;j<arr[i].length;j++) {int num = arr[i][j];if(num == 48) {g.setColor(Color.white);                      }else {g.setColor(Color.black);}g.fillRect(100+i*10, 100+j*10, 10, 10);}}}public static void main(String[] args) {StringUI su = new StringUI();su.initUI();}
}

QRCode

public class QRCode {//将String 转成charpublic  int[][] staringToBinary(String codeStr) {String str = "http://www.bilibili.com";int strlenght = str.length();int[][] binaryArr = new int[strlenght][8];for(int i = 0;i<strlenght;i++) {char c = str.charAt(i);System.out.println(c);//将char转成二进制码//integer 将字符转二进制码String cbinarycode = Integer.toBinaryString(c);System.out.println(cbinarycode);//获取二进制码编码长度int cbinaryCodeLenght = cbinarycode.length();//在前补码0 直到长度为8while(cbinaryCodeLenght < 8 ) {cbinarycode = "0"+cbinarycode;cbinaryCodeLenght++;}System.out.println(cbinarycode);// 将  补好二进制码 存储起来// 声明二维数组for(int j = 0;j<cbinaryCodeLenght;j++) {binaryArr[i][j] = cbinarycode.charAt(j);}}//testSystem.out.println("二进制矩阵");for(int i = 0;i<strlenght;i++) {for(int j = 0;j<8;j++) {System.out.print(binaryArr[i][j]);}System.out.println();}return binaryArr;}
}

Java二维码编码识别相关推荐

  1. java二维码编码生成并转换成流传入前端页面

    java二维码编码生成并转换成流传入前端页面 这里主要用了com.google.zxing的依赖,这个依赖主要可以完成图片叠加.二维码生成和图片加文字等功能. ①添加依赖 <dependency ...

  2. Atitit java 二维码识别 图片识别

    Atitit java 二维码识别 图片识别 1.1. 解码1 1.2. 首先,我们先说一下二维码一共有40个尺寸.官方叫版本Version.1 1.3. 二维码的样例:2 1.4. 定位图案2 1. ...

  3. Java中识别二维码并且提高二维码的识别率

    我们在Java开发的时候,发现对二维码的识别是不足的.所以我们需要提高识别率. 第一步.识别图片二维码.准备相应的jar包.我们在gradle+idea中开发. compile group: 'com ...

  4. Java实现二维码编码与解码

    1.构建maven项目,导入对应依赖 这里引用谷歌的zxing包实现二维码的编码与解码,导入依赖如下所示 <!-- 谷歌二维码 --> <dependency><grou ...

  5. java 工具类实现Base64二维码图片识别

    工具类已经实现Base64二维码图片识别和路径图片识别 所需maven依赖 <!--二维码生成和解析相关的jar包[生成][解析]-->     <dependency>   ...

  6. java二维码生成 使用SSM框架 搭建属于自己的APP二维码合成、解析、下载

    java二维码生成 使用SSM框架 搭建属于自己的APP二维码合成.解析.下载 自己用java搭建一个属于自己APP二维码合成网站.我的思路是这样的: 1.用户在前台表单提交APP的IOS和Andro ...

  7. java二维码生成-谷歌(Google.zxing)开源二维码生成学习及实例

    java二维码生成-谷歌(Google.zxing)开源二维码生成的实例及介绍  这里我们使用比特矩阵(位矩阵)的QR码编码在缓冲图片上画出二维码 实例有以下一个传入参数 OutputStream o ...

  8. C#_WPF中创建二维码、识别二维码

    C#_WPF中创建二维码.识别二维码 原文: C#_WPF中创建二维码.识别二维码 第三方库: WPFMediaKit.dll (WPFMediaKit摄像头处理) zing.dll NuGet安装这 ...

  9. 用不同的QR Code识别库实现二维码的识别(第一篇:opencv 和BoofCV)

    最近有个项目需要实现二维码的识别和摄像头的数据采集.在开始正式项目之前,我决定用python写几行简单的代码来测试每个库的识别效果.这次没有连续测量,也没有使用多线程识别.只是简单的测试了每个二维码的 ...

最新文章

  1. js中Dom元素及获取方法
  2. 设计模式复习-享元模式
  3. [20171109]缓存命中率神话.txt
  4. python学习网址
  5. mysql统计每周每个学校新增学生数量_深入学习之mysql(四)聚合函数
  6. 将Docker image push 到azure
  7. 中小型软件产品解决方案模板
  8. ipv6访问文件服务器,ipv4客户端如何访问ipv6服务器
  9. ROS_Noetic使用handeye-calib进行机械臂手眼标定
  10. 「 神器 」极简网速监控悬浮窗软件
  11. scp时提示【Read-only file system】的解决方案
  12. C语言实现字母的大写转换成小写
  13. 自然搜索流量和手淘首页的区别,如何提升手淘首页流量
  14. VB6程序运行错误Run-time error 339: Tabctl32.ocx的解决办法
  15. Quest3d 贴图,反射
  16. Linux设置与取消代理
  17. 怎样在Flex里使用FlexUnit
  18. SAP KP26 报工出错
  19. 拓扑排序-Kahn算法
  20. 搜狗输入法状态栏没法拖动

热门文章

  1. python画思维导图的英文_如何使用python做出思维导图
  2. hass智能 小米扫地机器人_Siri能控制小米扫地机器人吗_小米智能家居控制系统...
  3. 手机回收ATM面世,无人回收会成为下一个风口吗?
  4. 优信php面试流程_php面试的的时候你被提过哪些问题?
  5. 大学生体测技巧 动态拉伸,立定跳远,肺活量,仰卧起坐,坐位体前屈
  6. 你以为你以为的三国就是你以为的三国吗——读《三国史话》
  7. PCIe数据卡设计资料第611篇:基于VU9P的双路5Gsps AD 双路6Gsps DA PCIe数据卡
  8. 饿了么客户端透明代理 Samaritan详细介绍
  9. Django项目:LOL学院学员管理系统
  10. 机器学习实验二 决策树