Будем создавать консольное приложение, чтобы не описывать лишних манипуляций по добавлению виджетов и т.д.
Прежде всего необходимо подключить заголовочные файлы:
#include <QDir> #include <QtCore> #include <iostream>
Теперь рассмотрим функцию main нашего приложения:
int main(int argc, char *argv[]) { QCoreApplication app(argc, argv); //консольное приложение QDir dir; //объявляем объект работы с папками dir.setFilter(QDir::Files | QDir::Hidden | QDir::NoSymLinks); ///устанавливаем фильтр выводимых файлов/папок (см ниже) dir.setSorting(QDir::Size | QDir::Reversed); //устанавливаем сортировку "от меньшего к большему" QFileInfoList list = dir.entryInfoList(); //получаем список файлов директории std::cout << " Bytes Filename" << std::endl; //выводим заголовок /* в цикле выводим сведения о файлах */ for (int i = 0; i < list.size(); ++i) { QFileInfo fileInfo = list.at(i); std::cout << qPrintable(QString("%1 %2").arg(fileInfo.size(), 10).arg(fileInfo.fileName())); //выводим в формате "размер имя" std::cout << std::endl; //переводим строку } return 0; }
Т.к. это приложение консольное уместно будет и откомпилировать в консоли:
qmake -project QDir qmake make
Теперь запустите полученный файл:
./QDir
ну или
QDir
если у вас ненароком Windows.
Вы должны увидеть примерно такой вывод:
$ ./QDir Bytes Filename 299 QDir.pro 665 QDir.cpp 6422 Makefile 7240 QDir.o 14659 QDir
На этом всё.
зы установить рабочую папку можно вот так:
QString path = argv[1]; dir.cd(path);
При этом папка будет передана в качестве параметра при запуске.