[转] - 如何用QTcpSocket传送图片
我们知道,tcp网络编程发送数据是利用套接字来实现,将要传输的东西转化为数据流再进行传输,为了确保数据传输的准确性和安全性,我们在发送数据流前发送一个quint32的常量来表示所要发送的数据的大小;当我们要发送图片时,最关键的是获得图片的大小:
QBuffer buffer;
QPixmap(":/images/1.png").save(&buffer,"BMP");
知道了图片的大小就可以传输图片了;发送端:
QDataStream stream( &data, QIODevice::WriteOnly );
stream.setVersion( QDataStream::Qt_4_0 );
stream << (quint32)buffer.data().size();
data.append( buffer.data() );
tcpSocket->write(data);
data.resize(0);
接收端:
int dataSize;
while(socket.byteAvaileble() > 0 )
{
if( dataSize == 0 )
{
QDataStream stream( &socket );
stream.setVersion( QDataStream::Qt_4_0 );
if( socket.bytesAvailable() < sizeof(quint32) )
return;
stream >> dataSize; //获取接受到的数据大小
}
if( dataSize > socket.bytesAvailable() )
return;QByteArray array = socket.read( dataSize );
QBuffer buffer(&array);
buffer.open( QIODevice::ReadOnly );
QImageReader reader(&buffer, "PNG");
QImage image = reader.read();if( !image.isNull() )
{
ui.imageLabel->setPixmap( QPixmap::fromImage( image ) );
ui.imageLabel->setText( tr("") );
dataSize=0;
}
else
{
}
}
原文地址:http://blog.csdn.net/hsl17/article/details/6739171
转载于:https://www.cnblogs.com/suanec/p/4205189.html
[转] - 如何用QTcpSocket传送图片相关推荐
- 【问题收集·中级】关于XMPP使用Base传送图片
[问题收集·中级]关于XMPP使用Base传送图片 下面是我与博友的问答过程:并在最后链接附录了相应的文件: 博友问题: 16:35:38 他跟我说要 内容图片 base64编码 上传.. 博友问 ...
- html修改img图片颜色,教你如何用CSS修改图片颜色
原标题:教你如何用CSS修改图片颜色 看到题目是不是吓了一跳?css竟然还有这个操作?还真是第一次听说~ 原理嘛,其实很简单的,用到的就是 CSS3 滤镜filter中的drop-shadow,该滤镜 ...
- 如何将已有图片做成透明水印_如何用Photoshop在图片上添加透明水印?
我们经常会在网上看到一些漂亮的图片上有添加各种水印,添加水印可以让图片有一个标记,也可以防止别人盗用你的成果.那么图片上的这些水印是怎么添加的呢?今天,小编就给大家介绍用Photoshop软件来制作图 ...
- 如何用js实现图片下载
如何用js实现图片下载??? 需求场景:点击图标,实现图片下载. html代码: js函数: downLoadImg(imgsrc, name) {var image = new Image();// ...
- 如何用PS在图片上添加箭头
如何用PS在图片上添加箭头 第一步:在工具栏里选择自定义形状工具(快捷键U) 第二步:在属性栏里的第二个小三角(也就是几何选项)上单击 第三步:把那箭头底下的起点和终点都打上勾,还可以设置长度,长度, ...
- 如何用js实现图片切换的同时,文字也同时切换
如何用js实现图片切换的同时,文字也同时切换? 图片切换的实现我会 代码如下: <!doctype html> <html> <head> <meta cha ...
- 微信开发者工具 wxmi修改模版颜色_如何用手机给图片添加文字、诗词或者歌词?用对工具一键轻松解决...
如何用手机给图片添加文字.诗词或者歌词?用对工具一键轻松解决 有很多朋友有给图片添加文字的需求,但觉得给图片添加歌词,诗词等,排版非常的打脑壳,想得到好的效果就更难了.今天我就给大家分享一种简单的方法 ...
- python查找文字在图片中的位置_在ppt中如何用文字环绕图片,ppt用文字环绕图片的方法...
PPT在工作时,是会经常运用到的,它可以更清晰的讲解一些事情,在工作中几乎没有一件事情是ppt无法解决的,因此PPT的作用也是非常大的,但是在ppt中如何用文字环绕图片呢?今天就来介绍下ppt用文字环 ...
- python图片修改过、有原图、怎么得到改动的地方_微信发照片原图会泄露行踪?手把手教会你如何用 Python 通过图片获取用户信息!...
原标题:微信发照片原图会泄露行踪?手把手教会你如何用 Python 通过图片获取用户信息! 前言 有媒体曝出,微信发原图或存在泄露位置信息的风险. 对此,腾讯微信团队微博 12 月 1 日发布声明称, ...
最新文章
- 短书评 | 这本Python新书风评很好
- springboot 自动装配_Spring Boot 自动装配流程
- 高通msm8994启动流程简介
- Jenkins配置基于角色的项目权限管理--转
- centos7安装mysql8.0简书_【Linux实战03】CentOS 7 下 MySQL 8.0 的安装
- android之tab分页标签的实现方法,Android应用中使用ViewPager和ViewPager指示器来制作Tab标签...
- 超燃!支付宝技术双11纪录片《一心一役》全球独家首发
- Centos下lnmp编译安装详细过程
- python--list
- 不是区块链的特征_《区块链的特征》阅读练习及答案
- 关键词推荐工具中的用户引导机制之三
- Android动画之补间动画详解
- 计算机科学导论简答题答案题库,计算机科学导论习题答案
- [论文笔记]Self-Attention Generative Adversarial Networks
- ubuntu 安装wifi驱动(Device-c822)
- 计算机网络---数据链路层PPP协议
- dell灵越笔记本后盖怎么拆_戴尔灵越5584笔记本按键拆卸、安装教程
- iOS保持App真后台运行
- android 友盟统计 简单上手
- 酒桌游戏,初期训练思维
热门文章
- python绘制随机数直方图-用matplotlib画直方图(histogram)
- python和excel的区别-Python与Excel 不得不说的事情
- python画柱状图和折线图-Python数据可视化–折线图–柱状图
- 想学python编程-想学Python编程?你真的适合吗?
- python第三方库下载-3、python第三方库的安装方式
- python 3读取文件-python3的txt文件读写
- python爬虫怎么爬同一个网站的多页数据-请问爬虫如何爬取动态页面的内容?
- python教学网站-自学python有什么网站
- python代码需要背吗-Python面试必须要看的15个问题
- python创建新文件-如何在python中编辑文件并创建一个新的文件?