Spec-Zone.ru › Qt 5.9

Класс QTemporaryDir

Класс QTemporaryDir создаёт уникальную директорию для временного использования. Подробнее...

Заголовок: #include <QTemporaryDir>
qmake: QT += core
  • Список всех членов, включая унаследованные

Примечание: Все функции в этом классе являются перевходовыми.

Открытые функции

QTemporaryDir()
QTemporaryDir(const QString &templatePath)
~QTemporaryDir()
bool autoRemove() const
QString errorString() const
QString filePath(const QString &fileName) const
bool isValid() const
QString path() const
bool remove()
void setAutoRemove(bool b)

Подробное описание

Класс QTemporaryDir создаёт уникальную директорию для временного использования.

QTemporaryDir используется для безопасного создания уникальных временных директорий. Сама директория создаётся конструктором. Имя временной директории гарантированно уникально (т.е. вы гарантированно не перезапишете существующую директорию), и директория будет удалена при уничтожении объекта QTemporaryDir. Имя директории либо генерируется автоматически, либо создаётся на основе шаблона, передаваемого в конструктор QTemporaryDir.

Пример:

    // Within a function/method...

    QTemporaryDir dir;
    if (dir.isValid()) {
        // dir.path() returns the unique directory path
    }

    // The QTemporaryDir destructor removes the temporary directory
    // as it goes out of scope.

Очень важно проверить, что временная директория может быть создана, используя isValid(). Не используйте exists(), так как QDir по умолчанию представляет текущую директорию, которая существует.

Путь к временной директории можно найти, вызвав path().

У временной директории будет статическая часть имени и часть, рассчитанная для уникальности. Путь по умолчанию будет определяться из QCoreApplication::applicationName() (иначе qt_temp) и будет помещён в временный путь, возвращённый QDir::tempPath(). Если вы укажете свой собственный путь, относительный путь по умолчанию не будет помещён в временную директорию, а будет относительным к текущей рабочей директории. Во всех случаях к пути будет добавлен случайный строковый фрагмент для обеспечения уникальности.

См. также QDir::tempPath(), QDir и QTemporaryFile.

Документация по функциям-членам

QTemporaryDir::QTemporaryDir()

Конструирует QTemporaryDir с шаблоном, использующим имя приложения, возвращённое QCoreApplication::applicationName() (иначе qt_temp). Директория хранится во временной директории системы, QDir::tempPath().

См. также QDir::tempPath().

QTemporaryDir::QTemporaryDir(const QString &templatePath)

Конструирует QTemporaryDir с шаблоном templatePath.

Если templatePath — относительный путь, то путь будет относительным к текущей рабочей директории. Вы можете использовать QDir::tempPath() для построения templatePath, если хотите использовать временную директорию системы.

Если templatePath заканчивается на XXXXXX, оно будет использовано как динамическая часть имени директории, иначе будет добавлено. В отличие от QTemporaryFile, XXXXXX в середине строки шаблона не поддерживается.

См. также QDir::tempPath().

QTemporaryDir::~QTemporaryDir()

Уничтожает объект временной директории. Если был установлен режим автоматического удаления, то директория и её содержимое будут автоматически удалены.

См. также autoRemove().

bool QTemporaryDir::autoRemove() const

Возвращает true если QTemporaryDir находится в режиме автоматического удаления. Режим автоматического удаления автоматически удалит директорию с диска при уничтожении. Это упрощает создание объекта QTemporaryDir на стеке, заполнение его файлами, выполнение действий с файлами и, в конце концов, при возврате из функции автоматическое удаление освободит ресурсы.

Автоматическое удаление включено по умолчанию.

См. также setAutoRemove() и remove().

QString QTemporaryDir::errorString() const

Если isValid() возвращает false, эта функция возвращает строку ошибки, объясняющую, почему создание временной директории не удалось. В противном случае эта функция возвращает пустую строку.

Эта функция была добавлена в Qt 5.6.

QString QTemporaryDir::filePath(const QString &fileName) const

Возвращает имя пути к файлу во временной директории. Не проверяет, существует ли файл в директории. Избыточные двойные разделители или директории "." и ".." в fileName не удаляются (см. QDir::cleanPath()). Абсолютные пути запрещены.

Эта функция была добавлена в Qt 5.9.

bool QTemporaryDir::isValid() const

Возвращает true если QTemporaryDir был создан успешно.

QString QTemporaryDir::path() const

Возвращает путь к временной директории. Пустая строка, если QTemporaryDir не удалось создать.

bool QTemporaryDir::remove()

Удаляет временную директорию, включая всё её содержимое.

Возвращает true если удаление прошло успешно.

void QTemporaryDir::setAutoRemove(bool b)

Устанавливает QTemporaryDir в режим автоматического удаления, если b равно true.

Автоматическое удаление включено по умолчанию.

См. также autoRemove() и remove().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qtemporarydir.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API