页面加载中,请稍候
来源:嵌入式大杂烩发布时间:2023-03-03725浏览
询问 AI
来源:https://blog.csdn.net/nanfeibuyi
记--Qt5 默认已经不支持QFtp了,需要自己编译。例子使用QNetworkAccessManager实现简单的ftp文件上传和下载。
例子打包外链:
https://wwm.lanzouv.com/b0caushud 密码:1puy

例子中在虚拟机Ubuntu16.04 搭建了ftp服务器,windwos主机跟Ubuntu虚拟机能ping通。
用户名密码可以使用Ubuntu的账号,也可以自己添加新用户。


mainwindow.h文件
#ifndefMAINWINDOW_H
#defineMAINWINDOW_H
#include<QMainWindow>
#include<QtNetwork/QNetworkAccessManager>
#include<QtNetwork/QNetworkRequest>
#include<QtNetwork/QNetworkReply>
#defineFTP_PORT21
namespaceUi{
classMainWindow;
}
classMainWindow:publicQMainWindow
{
Q_OBJECT
public:
explicitMainWindow(QWidget*parent=0);
~MainWindow();
privateslots:
voidon_pushButtonDownload_clicked();
voidslot_NetworkAccessManagerUploadProcess(QNetworkReply*);
voidslot_NetworkAccessManagerDownloadProcess(QNetworkReply*);
voidon_pushButtonUploadFile_clicked();
private:
Ui::MainWindow*ui;
QNetworkAccessManagermNetworkAccessManagerUpload;
QNetworkAccessManagermNetworkAccessManagerDownload;
};
#endif//MAINWINDOW_H
例子中在虚拟机Ubuntu16.04 搭建了ftp服务器,windwos主机跟Ubuntu虚拟机能ping通。
img
img//在线安装,一般安装成功后ftp服务器就自动启动了,使用ps-ef|grepvsftpd确认
sudoapt-getinstallvsftpd
//编辑配置文件,启用write_enable=YES不然不能上传文件
sudo/etc/vsftpd.conf
修改配置后保存然后重启vsftpd,执行sudo/etc/init.d/vsftpdrestart
//如果之前安装过但是有问题,可以使用这一句进行移除
sudoapt-getpurgevsftpd

本文来源网络,免费传达知识,版权归原作者所有。如涉及作品版权问题,请联系我进行删除。
在公众号聊天界面回复1024,可获取嵌入式资源;回复m,可查看文章汇总
新闻来源:嵌入式大杂烩,文中所述为作者独立观点,不代表icspec立场。更多精彩资讯请下载icspec App。如对本稿件有异议,请联系微信客服specltkj。
暂无评论哦,快来评论一下吧!
4 天前

2026-06-23

2026-06-24