Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试在 Qt 中开发客户端 FTP。当我尝试在服务器中下载文件时遇到问题。
在对应于 readyRead() 信号的槽中,我有一个 QByteArray 导致 readAll() 方法;如果文件小于3-4 kB,没关系,否则结果不完整(我只有文件的开头)
我试过这样做:
while(_ftp->bytesAvailable() > 0) QByteArray array = _ftp->readAll();
但它也失败了!有人知道如何恢复整个文件吗?
从以下文档QFtp::readyRead:
QFtp::readyRead
如果您想在数据可用时立即以块的形式处理数据,则此信号很有用。如果您只对完整数据感兴趣,只需连接到 commandFinished() 信号并读取数据即可。
所以你需要连接到commandFinished信号并readAll在你的插槽中使用。
commandFinished
readAll