我正在尝试用Qt开发一个客户端FTP。当我尝试下载服务器中的文件时出现问题。
在对应于readyRead()信号的插槽中,我有一个产生readAll()方法的QByteArray;如果文件小于3-4个kB,就没问题,否则结果不完整(我只有文件的开头)
我试过这样做:
while(_ftp->bytesAvailable() > 0)
QByteArray array = _ftp->readAll();但是它也失败了!有人知道如何恢复整个文件吗?
发布于 2013-07-13 20:49:08
来自QFtp::readyRead的文档
如果您想要在数据块可用时立即处理数据块,则此信号非常有用。如果您只对完整的数据感兴趣,只需连接到commandFinished()信号并读取数据即可。
因此,您需要连接到commandFinished signal并在插槽中使用readAll。
https://stackoverflow.com/questions/17630253
复制相似问题