1.通过QFtp实现
- QFtp其实其实在qt4中是存在的,但是到了qt5就去掉了,那么怎么怎么才能使用QFtp
- 从github上下载QFtp库:
从guihup上下载QFtp
目录如下:
1.1 编译QFtp
通过qt5打开\src\qftp\qftp.pro工程文件;(我的是MinGW)
将qftp.pro文件中的:
CONFIG += static
CONFIG -= shared
修改为:
CONFIG -= staticlib
CONFIG += shared
- 然后编译功能,会发现多出来一个lib文件夹;
- 然后新建一个QFtp文件夹,里面新建一个include
文件夹和lib文件夹 - 将刚生成的lib目录下的.a .dll文件全部放到这个lib文件夹中,将qftp.h qurlinfo.h放到include文件夹中
2. 测试QFtp功能
- 新建一个工程如下图:
- 将上面创建好的QFtp文件夹放到,这个功能目录下面;
- 右键工程添加库
可以看到.pro文件中多了
win32:CONFIG(release, debug|release): LIBS += -L$$PWD/QFtp/lib/ -lQt5Ftp
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/QFtp/lib/ -lQt5Ftpd
INCLUDEPATH += $$PWD/QFtp/include
DEPENDPATH += $$PWD/QFtp/include
说明库已经加载成功,接下来在main函数中写一个例子:
#include <QCoreApplication>
#include "qftp.h"
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QFtp *ftp = new QFtp();
ftp->connectToHost("127.0.0.1", 21); // 主机:127.0.0.1 端口号:21
ftp->login("chenyitao", "123456"); // 用户名:chenyitao 密码:123456
ftp->mkdir("taoshu"); // 创建一个名为taoshu的文件夹
ftp->close();
return a.exec();
}