使用Qt的QDirIterator和FTP服务器

时间:2013-09-27 12:26:17

标签: qt ftp qdir

(使用Qt 4.7)我有一个需要用户输入目录名的函数,然后在FTP服务器上按该名称循环目录中的文件。 ftp地址是常量,所以我把它硬编码。到目前为止,我有这个:

QString dir_name = /*whatever the user inputs*/;
QString source = "ftp://username:password@ftp.myftpaddress.com/" + dir_name + "/";
QDirIterator it(source, QDirIterator::NoIteratorFlags);

while(it.hasNext())
{
  //do things with each individual file...
}

但是,当我运行它时,它永远不会进入循环。我输入了print语句以帮助调试,它一直说it引用的目录是空的,即使它不是。我尝试将source的结果复制并粘贴到浏览器中,这是正确的。我之前使用过FTP服务器和QDirIterator,但从来没有在一起,为了让它工作,我需要做些什么特别的事情?

1 个答案:

答案 0 :(得分:1)

  

之前我曾经使用过FTP服务器和QDirIterator,但从来没有在一起,为了让它工作,我需要做些什么特别的事情?

没什么特别的,它只是不起作用,因为QDirIterator使用本地文件。它不支持网络驱动程序。您需要自己处理迭代。

我很抱歉这是一个更糟糕的消息。