利用二维码实现文件从电脑传输到手机。代码开源,放在了Coding,有兴趣的话可以看一下。
工程是用Qt+QZXing写的,所以电脑端软件具有跨平台的能力;虽然手机端也是用Qt写的,但是针对安卓做了一些平台化的东西,要在IOS上用的话,估计要修改一些东西。
最新版本的Qt配置安卓编译环境时有点麻烦,具体请查看另外一篇博文:https://blog.csdn.net/joyopirate/article/details/111398898

全程无需联网,无需wifi,无需蓝牙,无需串口(前提是电脑已经安装了本工具的电脑端软件)。
本工具分为电脑端以及手机端。
电脑端负责将文件切块并编码成二维码,手机端负责对二维码序列进行解码并合成文件副本,保存在手机SD的根目录下的QRReceiver目录中。
但是由于一张二维码所包含的信息较少(目前我测试的只能包含100个字符左右),所以目前该工具只能进行一些小文件的传输;大文件会生成几万几十万张二维码,识别完需要很长时间。

简单流程为:电脑端经过QFile以二进制读取文件,将数据用qCompress压缩,将数据分成n等分(每份100字节左右),将每份数据编号并将数据toBase64经由QZXing变成二维码;手机端通过QCamera获取后置摄像头数据,对每一张二维码解码,将二维码解码得到的数据fromBase64,然后qUncompress,将数据缓存到一个Map中,等所有数据接收完之后,合成一个文件,保存在目录下。

Qt 二维码文件传输工具相关推荐

  1. 二维码文件传输小工具(可在两台完全隔离的设备之间使用) - QFileTrans 2.0.0.6

    原帖地址为吾爱破解,本账号与吾爱破解原贴为同一人所有,故投了原创. 程序下载 总链接:https://wwd.lanzout.com/b03j7l92h#7i3b 密码:7i3b 已知问题: 因转向C ...

  2. 墨者学院-二维码文件分析

    墨者学院-二维码文件分析 首先用手机微信扫, 什么都没扫出来,然后将二维码保存到本地, 再上传 然后用草料二维码在线扫描得到一串链接,将wd后面的base64进行解码,二次解码得到key 解码两次得到 ...

  3. 使用ImageIO.write上传二维码文件时候,提示系统找不到指定路径

    报错如图所示: java.io.FileNotFoundException: E:\SF\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtp ...

  4. 【工具】Vue中生成二维码组件——vue-qr

    [工具]Vue中生成二维码组件--vue-qr npm地址--https://www.npmjs.com/package/vue-qr 注:不支持IE浏览器 效果 1.安包 npm install v ...

  5. 【转】云社区 博客 博客详情 二维异形件排版算法介绍(一)

    转自:https://bbs.huaweicloud.com/blogs/175385 [摘要] 排样问题(Nesting Problem)又称为下料问题(Cutting and stock prob ...

  6. [开源]C#二维码生成解析工具,可添加自定义Logo

    原文:[开源]C#二维码生成解析工具,可添加自定义Logo 二维码又称 QR Code,QR 全称 Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的 Bar Co ...

  7. 【转】二维异形件排版算法介绍(三)

    转自:https://bbs.huaweicloud.com/blogs/203947 [摘要] 相比于基于可行解的排样算法,重叠移除算法在改变解的状态时,允许零件之间发生重叠,然后采用分离技术消除重 ...

  8. 【转】二维异形件排版算法介绍(二)

    转自:https://bbs.huaweicloud.com/blogs/196289 [摘要] 二维不规则异形件主要有两种策略:分别是基于可行解的排样策略和基于重叠移除的排样策略.所谓基于可行解的排 ...

  9. 二维码图片生成工具C#winform源码

    二维码图片生成工具C#winform源码 源码描述: 一.源码特点 采用winform进行开发,生成二维码并保存,欢迎下载 二.功能介绍 本源码是一个可以自动生成二维码图片的小模块,可以添加自己的lo ...

  10. cad简化螺纹lisp_二维螺纹的AutoLISP工具

    二维螺纹的绘制虽然不难不过绘制过程比较繁琐,这里天堂供的这款二维螺纹的AutoLISP工具可以让你通过AutoCAD的AutoLISP工具轻松绘制二维螺纹,节省很多效率. 使用方法: 1.先建二个图层 ...

最新文章

  1. LRU算法确定最后使用时间的顺序-计数器
  2. 数据库索引类型及实现方式
  3. N5K连接FEX测试
  4. javaweb学习总结(八):HttpServletResponse对象(二)
  5. Java简单内存解析
  6. 【LeetCode笔记】34. 在排序数组中查找元素的第一个和最后一个位置(Java、二分)
  7. Android9很多游戏玩不了,安卓狂野飙车9玩不了应该如何解决
  8. ubuntu下如何查看和设置分辨率 (转载)
  9. 易软门诊管理软件php,易软门诊管理系统
  10. 三星香港 android8.0,三星A8 Star官方港版安卓8.0固件刷机包:TGY-G8850ZHS3ASD1
  11. 【翻译】YOLOX: Exceeding YOLO Series in 2021
  12. 车辆动力学知识总结(二):运动学模型
  13. 水果忍者(数学 叉积)
  14. Android音频子系统(十五)------Audio调试经验
  15. LeetCode1219 黄金矿工
  16. flowchart流程图编程语言下载_流程图(flowchart)
  17. JAVA分割字符串的方法
  18. SSHサーバのRSA fingerprintの確認方法
  19. 互联网大厂的黑话困局
  20. 2019.1.18【NOIP提高组】模拟B组 JZOJ 3025 选择客栈

热门文章

  1. rog live service是什么_「评测」三模无线,微动随心换,华硕ROG 烈刃2满足所有游戏需求...
  2. 删除ftp服务器上文件夹的方法,删除ftp服务器文件夹
  3. 黑马程序员python15期月薪_2019年传智播客黑马python人工智能15期全套视频教程
  4. 城市大脑已经几岁?城市大脑发展成熟度的年龄评估模型
  5. php判断字符串是否为空的方法
  6. TC与CATIA集成使用说明
  7. 蓝牙网关走进智慧校园
  8. 【Java Map数据】中国各省份省会城市经纬度
  9. Google地图3D城市模型下载最新实践
  10. vt版本不见了_王者荣耀VT版本玩法是什么?修改机型玩VT版方法是什么?