Qt İle Bilgisayardaki Dizinlerin Listesini Almak
-
qDir kütüphanesine ait fonksiyonları falan incelerken adamın örnek olarak yaptığı tek klasörün içindeki dosya ve dizinleri alma işlemini tüm bilgisayar için uyarlamak istedim şöyle bi kod yazdım.
#include <QtCore/QCoreApplication>
#include <QDir>
#include <QFileInfo>
#include <QString>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QDir mDir;
QString ad = "ABCDEFGHIJKLMNOPRSTUVYZWX";
for(int i=0;i<=25;i++)
{
mDir = ad[i]+":/";
if(mDir.exists())
{
foreach(QFileInfo mitm, mDir.entryInfoList())
{
qDebug() << mitm.absoluteFilePath();
}
}
}
return a.exec();
}EDİT: kod çalışıyorda ben göremiyormuşum :D bilgisayardaki sürücüleri içindeki dosya ve dizinleri listeliyor ancak sürücü içindeki dizinin içine inmiyor kodlar, yinede fena örnek olmadı sanırım :)
-
#include <QtCore/QCoreApplication>
#include <QDir>
#include <QFileInfo>
#include <QString>
#include <QDebug>
void listele(QString x);
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString yol = "/home/wasd/";
listele(yol);
return a.exec();
}
void listele(QString x)
{
QDir mDir(x);
foreach(QFileInfo mitm, mDir.entryInfoList())
{
if(mitm.isDir())
{
QString tmp = "\""+ mitm.absoluteFilePath()+"\"";
listele(tmp);
}
qDebug() << mitm.absoluteFilePath();
}
}kodları bu hale getirdim daha alt dizinlere inmek için ama yapamadım sanırım, uraşan varsa denesin işte, çalışır hale getirebilirsem düzenlerim bi ara.
-
wasd bunu yazdı
#include <QtCore/QCoreApplication>
#include
#include
#include
#include
void listele(QString x);
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString yol = "/home/wasd/";
listele(yol);
return a.exec();
}
void listele(QString x)
{
QDir mDir(x);
foreach(QFileInfo mitm, mDir.entryInfoList())
{
if(mitm.isDir())
{
QString tmp = "\""+ mitm.absoluteFilePath()+"\"";
listele(tmp);
}
qDebug() << mitm.absoluteFilePath();
}
}kodları bu hale getirdim daha alt dizinlere inmek için ama yapamadım sanırım, uraşan varsa denesin işte, çalışır hale getirebilirsem düzenlerim bi ara.
İçinde return olmayan recursive yazmışın... Milletin başına iş açccan :D
-
NmC bunu yazdı
İçinde return olmayan recursive yazmışın... Milletin başına iş açccan :D
hayır hissediyodum bi hata olduğunu ama göremiyodum,diyorum neden düzgün sonuç vermiyo diye :D
