使用QNetworkAccessManager模式实现FTP上传Demo

本文介绍了FTP协议,它是TCP/IP协议组之一,传输效率高,分主动和被动模式。重点讲述了QT中实现FTP传输功能的3种方式,包括已不支持的Qt4 QFtp、当前支持的Qt5 QNetworkAccessManager以及第三方库POCO中的FTPClientSession,并给出QNetworkAccessManager方式实现的主要函数、代码等。

1、FTP协议 

      FTP的中文名称是“文件传输协议”,是File Transfer Protocol三个英文单词的缩写。FTP协议是TCP/IP协议组中的协议之一,其传输效率非常高,在网络上传输大的文件时,经常采用该协议。

      FTP协议又分为主动模式和被动模式,有关介绍看这里,本文不再赘述。

2、实现方式

     QT中实现FTP传输功能有3种实现方式:

  •      Qt4 QFtp
  •     Qt5 QNetworkAccessManager
  •     POCO中的 FTPClientSession

      第一种方式是QT中4.x中的实现方式,目前新版本中已经不再支持;第2种方式是目前qt中支持的实现方式;第三种属于第三方库。

     QNetworkAccessManager 是Qt里面专门负责网络请求的模块,包含了http的post、get,还有一个put,而Qt5中要实现Ftp上传功能就通过put来完成,下载通过get来完成。下面的demo是这种方式实现的。

3、QNetworkAccessManager方式实现FTP

  主要函数如下

 QNetworkReply *put(const QNetworkRequest &request, QIODevice *data)
 QNetworkReply 
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

previewer1024

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值