当前位置: 代码迷 >> QT开发 >> Linux Qt中的QDir类的相关有关问题,请大神指导!很急请相助!
  详细解决方案

Linux Qt中的QDir类的相关有关问题,请大神指导!很急请相助!

热度:91   发布时间:2016-04-25 03:10:27.0
Linux Qt中的QDir类的相关问题,请大神指导!!很急!!!!请相助!!!
问题是:想将linux中的/dev目录中的video(如video0,video1等等)视频设备添加到dev_name_list的Qlist列表中,为何下面程序不能实现此功能????盼大神回答!!!!!感谢!!!
定义:QList<QString> dev_name_list;//用于存放设备名
程序:

 QDir d("/dev");
    if ( !d.exists() )
           qDebug()<<"Cannot find the dev directory";
    d.setFilter(QDir::Files);
    d.setSorting(QDir::Name);
    QFileInfoList list(d.entryInfoList());
    for(int i = 0;i < list.size();++i)
    {
        QString s = list.at(i).fileName();
        if(s.contains("video",Qt::CaseSensitive))
        {
            dev_name_list.append(s);
        }
    }
    if(dev_name_list.isEmpty())
    {
        return -1;
    }
    要怎么修改才能实现此功能呢?
------解决思路----------------------
QFileInfoList list(d.entryInfoList());
这句修改为:QFileInfoList list = d.entryInfoList();
然后把list.size()打印出来看看。
再不行,不要设置filter,在循环里打印每一个entry看看。
------解决思路----------------------
d.setFilter(QDir::Files)应该改为:
d.setFilter(QDir::System);