Данный класс представляет возможность получении информации о свойствах файлов или каталогах.
К таким свойствам можно отнести сведенье об имени файла, пути файла, правах доступа, размер и многое другое.
Рассмотрим по подробней несколько методов получения свойств файла.
Получение атрибутов QFileInfo
Проверка на файл или каталог:
QFileInfo fileInfo(file); qDebug () << fileInfo.isFile(); qDebug () << fileInfo.isDir();
Возвращает true при совпадении
Получение полного пути к файлу:
QFileInfo fileInfo(file); qDebug() << fileInfo.absoluteFilePath(); // вернет путь с именем фала qDebug() <<fileInfo.absolutePath(); // вернет только путь
Получить размер файла:
QFileInfo fileInfo(file); qDebug() << fileInfo.size();
Вернет целое значение в байтах
Получить дату и время:
QFileInfo fileInfo(file); qDebug() << fileInfo.created().toString(); // Создание файла qDebug() << fileInfo.lastModified().toString(); // Изменения файла qDebug() << fileInfo.lastRead().toString(); // Чтение файла
Для получения расширения файла:
QFileInfo fileInfo(file); qDebug() << fileInfo.suffix();
Получение атрибутов файла:
qDebug() << fileInfo.isAbsolute();
Возвращает true, если путь к файлу является абсолютным, в противном случае возвращает false, если путь относительный
qDebug() << fileInfo.isBundle();
Возвращает true, если этот объект указывает на пакет или на символическую ссылку на пакет в macOS и iOS; в противном случае возвращает false
qDebug() << fileInfo.isExecutable();
Возвращает true, если файл исполняемый; в противном случае возвращает false
qDebug() << fileInfo.isHidden();
Возвращает true, если это «скрытый» файл; в противном случае возвращает false
qDebug() << fileInfo.isNativePath();
Возвращает true, если путь к файлу можно использовать напрямую с нативными API. Возвращает false, если файл иначе поддерживается виртуальной файловой системой внутри Qt, такой как Qt Resource System
qDebug() << fileInfo.isReadable();
Возвращает true, если файл исполняемый; в противном случае возвращает false
qDebug() << fileInfo.isRelative();
Возвращает true, если путь к файлу является относительным, в противном случае возвращает false, если путь абсолютный (например, в Unix путь является абсолютным, если он начинается с «/»)
qDebug() << fileInfo.isRoot();
Возвращает true, если объект указывает на каталог или на символическую ссылку на каталог, и этот каталог является корневым каталогом; в противном случае возвращает false
qDebug() << fileInfo.isSymLink();
Возвращает true, если этот объект указывает на символическую ссылку; в противном случае возвращает false
qDebug() << fileInfo.isWritable();
Возвращает true, если пользователь может записать в файл; в противном случае возвращает false