Qt使用QNetworkAccessManager實現Ftp操作


博客地址已更改,文章數量較多不便批量修改,若想訪問源文請到 coologic博客 查閱,網址:www.coologic.cn

如本文記錄地址為 techieliang.com/A/B/C/ 請改為 www.coologic.cn/A/B/C/ 即可查閱

 

版權聲明:若無來源注明, 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操作


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM