[翻译] Qt QFtp功能无法被Qt 5 Network系列模块替代的说明
??????? Qt4下Qt提供了QFtp類以完成FTP相關的操作,但是Qt5不再提供QFtp類了,取而代之的是QNetworkAccessManager,QNetworkRequest和QNetworkReply等類。那么Qt5的network模塊能否替代QFtp等類呢?
??????? 測試后發現,如果利用QNetworkRequest封裝諸如: ftp://ftp.jaist.ac.jp/pub/qtproject/official_releases/jom/jom_0_6_08.zip以通過FTP下載某一個特定的文件是可以做到的;但是類似原int QFtp::list(const QString & dir = QString())這些接口的功能就無法完成了。
??????? 在Stack Overflow上找了答案,確認Qt5下的QNetworkAccessManager等模塊無法替代QFtp等模塊。
????????鏈接:https://stackoverflow.com/questions/14111120/qt-code-to-get-list-of-files-from-ftp-server-using-qnetworkaccessmanager
?
???????
?
翻譯如下:
標題:Qt編碼并利用QNetworkAccessManager從FTP服務器上獲取文件列表
問題:我正在用Qt編寫一個FTP客戶端程序,用的是Qt 5.0版本。
?????????? 我已經通過QNetworkAccessManager實現了上傳和下載文件功能,之所以不用QFtp是因為Qt5下QFtp已被廢除了。
?????????? 現在我想編碼實現從FTP服務器獲取文件列表,我知道在QFtp類下的具體做法但是不知道怎樣利用QNetworkAccessManager完成這個功能,給個建議吧。
回答:如果你想從一個遠程目錄獲取文件列表的話,你還是需要用QFtp,因為目前QNetworkAccessManager還無法做到。
?????????? QFtp已經作為一個獨立模塊分離出去了,但是你可以從Gitorious倉庫中下載:https://qt.gitorious.org/qt/qtftp (點擊 "Source tree",然后點擊"Download master..."以下載該模塊)。
?
注:實際上到了Qt 5.10了還是無法完成對QFtp的替代,我目前考慮利用libcurl完成該功能......
轉載于:https://www.cnblogs.com/r0xFED/p/9879338.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的[翻译] Qt QFtp功能无法被Qt 5 Network系列模块替代的说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (2)shiro角色资源权限
- 下一篇: webstorm设置