版权声明:若无来源注明,Techie亮博客文章均为原创。 转载请以链接形式标明本文标题和地址:
本文标题:Qt使用QNetworkAccessManager实现Ftp操作     本文地址:http://techieliang.com/2017/12/653/

1. 介绍

QtNetwork是Qt网络操作模块,提供了基于TCP/IP的各种API,除了之前介绍过的最基础的TCP及UDP通讯:QTcpSocket-Qt使用Tcp通讯实现服务端和客户端QUdpSocket-Qt使用Udp通讯实现服务端和客户端,还提供了HTTP、HTTPS、FTP等高级API,并统一使用QNetworkAccessManager进行操作。HTTP操作请看:Qt使用QNetworkAccessManager实现Http操作

qt4x分别使用QFtp和QHttp,5以后统一用QNetworkAccessManager

2. 使用说明

首先请看:Qt使用QNetworkAccessManager实现Http操作

ftp与http操作完全一样,只不过需要设置一下用户名、密码、地址、端口、文件路径。这些操作只需要对QUrl做配置,其余不需要改变

分别调用QUrl的

  1. void setUserName(const QString &userName, ParsingMode mode = DecodedMode)
  2. void setPassword(const QString &password, ParsingMode mode = DecodedMode)
  3. void setHost(const QString &host, ParsingMode mode = DecodedMode)
  4. void setPort(int port)
  5. void setPath(const QString &path, ParsingMode mode = DecodedMode)

上述对于还需要配置一下:setScheme(“ftp”)

  1. void setScheme(const QString &scheme)

这个指的是 ftp:// 和http://由于并没有通过setUrl设置url,需要主动的指定scheme

上面分别指定了ftp以及ip,port及path,这四项可以直接setUrl但是建议分别调用组合

3. 上传与下载

下载就是get,除了QUrl配置不一样其他与http完全相同,最后把get得到的所有数据保存到文件即可

上传那就是put,先从文件读取出所有数据,然后put即可,注意读取完存为QByteArray类型

转载请以链接形式标明本文标题和地址:Techie亮博客 » Qt使用QNetworkAccessManager实现Ftp操作

Qt使用QNetworkAccessManager实现Ftp操作的更多相关文章

  1. Qt使用QNetworkAccessManager实现Http操作

    版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Qt使用QNetworkAccessManager实现Http操作     本文地址:http ...

  2. PHP FTP操作类( 上传、拷贝、移动、删除文件/创建目录 )

    /** * 作用:FTP操作类( 拷贝.移动.删除文件/创建目录 ) * 时间:2006/5/9 * 作者:欣然随风 * QQ:276624915 */ class class_ftp { publi ...

  3. C# FTP操作

    using System; using System.Collections.Generic; using System.Net; using System.IO; namespace FTP操作 { ...

  4. paip.c++ qt 目录遍历以及文件操作

    paip.c++ qt 目录遍历以及文件操作 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.net/a ...

  5. 关于FTP操作的功能类

    自己在用的FTP类,实现了检查FTP链接以及返回FTP没有反应的情况. public delegate void ShowError(string content, string title); // ...

  6. FtpHelper ftp操作类库

    FtpHelper ftp操作类库 using System; using System.Collections.Generic; using System.Linq; using System.Te ...

  7. C# FTP操作类的代码

    如下代码是关于C# FTP操作类的代码.using System;using System.Collections.Generic;using System.Text;using System.Net ...

  8. 【转载】C#工具类:FTP操作辅助类FTPHelper

    FTP是一个8位的客户端-服务器协议,能操作任何类型的文件而不需要进一步处理,就像MIME或Unicode一样.可以通过C#中的FtpWebRequest类.NetworkCredential类.We ...

  9. Qt中与文件目录相关操作

    一.与文件目录操作有关操作. Qt中与文件目录相关的操作在QDir中,需加入#include <QDir>语句. QDir::drives()是列出电脑根目录下的所有目录,返回的是QFil ...

随机推荐

  1. 2.4 自己编写一个vivi驱动程序

    学习目标:从零编写一个vivi驱动程序,并测试: 一. vivi驱动应用程序调用过程 上节对xawtv对vivi程序调用欧城进行了详细分析,可总结为以下流程: 二.仿照vivi.c编写myvivi.c ...

  2. C语言中的if与else if

    今天发现一个比较不理解的代码,是关于else if这个判断语句的代码.代码如下 #include<stdio.h> ; int main(void) { ) { printf(" ...

  3. Framwork框架-网络客户端的使用

    1.引入头文件 #include "Comm.h" 2.派生自框架基类CProtocolCpMgr class NetManager : public CProtocolCpMgr ...

  4. 20155305 2016-2017-2 《Java程序设计》实验四 Android开发基础设计实验报告

    实验内容 1.Android Stuidio的安装测试: 参考<Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)>第二十四章: 安装 ...

  5. 20155315实验三 敏捷开发与XP实践

    实验内容 1.XP基础 2.XP核心实践 3.相关工具 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程: 2.完成实验.撰 ...

  6. 20145226 《Java程序设计》第3周学习总结

    教材学习内容总结 学习目标 区分基本类型与类类型 理解对象的生成与引用的关系 掌握String类和数组 理解封装的概念 掌握构造方法的定义 理解重载的概念 掌握static的应用 教材第四章内容总结 ...

  7. WPF Color、String、Brush转换

    原文:WPF Color.String.Brush转换 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/BYH371256/article/detai ...

  8. Walle代码发布

    一.概述 Walle 一个web部署系统工具,配置简单.功能完善.界面流畅.开箱即用!支持git.svn版本管理,支持各种web代码发布,PHP,Python,JAVA等代码的发布.回滚,可以通过we ...

  9. 基于OpenSSL的RSA加密应用(非算法)

    基于OpenSSL的RSA加密应用(非算法) iOS开发中的小伙伴应该是经常用der和p12进行加密解密,而且在通常加密不止一种加密算法,还可以加点儿盐吧~本文章主要阐述的是在iOS中基于openSL ...

  10. 我们一起学习WCF 第五篇数据协定和消息协定

    A:数据协定(“数据协定”是在服务与客户端之间达成的正式协议,用于以抽象方式描述要交换的数据. 也就是说,为了进行通信,客户端和服务不必共享相同的类型,而只需共享相同的数据协定. 数据协定为每个参数或 ...