Qt5.8用FTP实现文件上传和下载(带进度条)
本文基于Qt5.8利用FTP协议实现文件的上传和下载。 本人所使用的FTP服务器端的操作系统为Linux(Ubuntu),编写QT代码的客户端的操作系统为Windows.
重要声明: 由于QT5.4版本之前和之后所提供的的类的差别非常大,所以请参考本文的读者确保您自己的Qt版本>=5.4。我们主要使用的类QNetWorkAccessManager从5.4版本才开始有。
FTP服务器的详细配置可在本人原创的另一篇名为“ Ubuntu16.04系统中配置FTP”的博客中查看(http://blog.csdn.net/timothy93bp/article/details/77527531)。
我的FTP服务器的用户名为peng, 密码为123456,ip地址为192.168.1.166, FTP服务器的根目录为/home/peng。
- 1. UI界面
- 2. 修改.pro文件
- 3. 头文件代码
- 4. 源文件代码(上传,下载,进度条)
- 5. FTP缺点
1. UI界面
本程序的UI界面如下:
文本编辑框中输入的是上传到服务器或者下载到本地之后,文件所要保存的名字, 该控件的objectName为“lineEdit“。”FTP上传”的按钮的objectName为“uploadButton“, “FTP下载”的按钮的objectName为“downloadButton“。
2. 修改.pro文件
首先,为了使用关于网络的类,我们首先要在.pro文件中加入一行:QT += network:
//FTP.pro的内容
#-------------------------------------------------
#
# Project created by QtCreator 2017-08-25T14:00:00
#
#-------------------------------------------------
QT += core gui
QT += network
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = FTP
TEMPLATE = app
# The following define makes your compiler emit warnings if you use
# any feature of Qt which