Sur cette page

QTemporaryDir Class

La classe QTemporaryDir crée un répertoire unique destiné à un usage temporaire. En savoir plus...

En-tête : #include <QTemporaryDir>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake : QT += core

Remarque : toutes les fonctions de cette classe sont réentrantes.

Fonctions publiques

QTemporaryDir()
QTemporaryDir(const QString &templatePath)
(since 6.4) QTemporaryDir(QTemporaryDir &&other)
~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)
(since 6.4) void swap(QTemporaryDir &other)
(since 6.4) QTemporaryDir &operator=(QTemporaryDir &&other)

Description détaillée

QTemporaryDir permet de créer en toute sécurité des répertoires temporaires uniques. Le répertoire lui-même est créé par le constructeur. L'unicité du nom du répertoire temporaire est garantie (c'est-à-dire que vous êtes assuré de ne pas écraser un répertoire existant), et le répertoire sera ensuite supprimé lors de la destruction de l'objet QTemporaryDir. Le nom du répertoire est soit généré automatiquement, soit créé à partir d'un modèle transmis au constructeur de QTemporaryDir.

Exemple :

    // 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.

Il est très important de vérifier que le répertoire temporaire peut être créé à l’aide de ` isValid()`. N’utilisez pas ` exists()`, car un objet ` QDir ` construit par défaut représente le répertoire courant, qui existe déjà.

Le chemin d’accès au répertoire temporaire peut être obtenu en appelant la fonction path().

Un répertoire temporaire comportera une partie statique du nom et une partie calculée pour être unique. Le chemin par défaut sera déterminé à partir de QCoreApplication::applicationName() (ou de qt_temp) et sera placé dans le chemin temporaire tel que renvoyé par QDir::tempPath(). Si vous spécifiez votre propre chemin, un chemin relatif ne sera pas placé par défaut dans le répertoire temporaire, mais sera relatif au répertoire de travail actuel. Dans tous les cas, une chaîne aléatoire sera ajoutée au chemin afin de le rendre unique.

Voir également QDir::tempPath(), QDir et QTemporaryFile.

Documentation des fonctions membres

QTemporaryDir::QTemporaryDir()

Crée un objet `QTemporaryDir` en utilisant comme modèle le nom de l’application renvoyé par ` QCoreApplication::applicationName()` (ou, à défaut, ` qt_temp`). Le répertoire est stocké dans le répertoire temporaire du système, ` QDir::tempPath()`.

Voir également QDir::tempPath().

[explicit] QTemporaryDir::QTemporaryDir(const QString &templatePath)

Crée un objet `QTemporaryDir` en utilisant le modèle ` templatePath`.

Si templatePath est un chemin relatif, celui-ci sera relatif au répertoire de travail actuel. Vous pouvez utiliser QDir::tempPath() pour créer templatePath si vous souhaitez utiliser le répertoire temporaire du système.

Si templatePath se termine par XXXXXX, celui-ci sera utilisé comme partie dynamique du nom du répertoire ; sinon, il sera ajouté à la fin. Contrairement à QTemporaryFile, XXXXXX au milieu de la chaîne de modèle n’est pas pris en charge.

Voir également QDir::tempPath().

[noexcept, since 6.4] QTemporaryDir::QTemporaryDir(QTemporaryDir &&other)

La fonction « move » construit un nouvel objet QTemporaryDir à partir de other.

Remarque : l'objet d'origine other est placé dans un état partiellement formé, dans lequel les seules opérations valides sont la destruction et l'affectation d'une nouvelle valeur.

Cette fonction a été introduite dans Qt 6.4.

[noexcept] QTemporaryDir::~QTemporaryDir()

Supprime l'objet du répertoire temporaire. Si le mode de suppression automatique a été activé, le répertoire et tout son contenu seront automatiquement supprimés.

Voir aussi autoRemove().

bool QTemporaryDir::autoRemove() const

Renvoie ` true ` si l'QTemporaryDir est en mode de suppression automatique. Le mode de suppression automatique supprime automatiquement le répertoire du disque lors de la destruction de l' . Cela permet de créer très facilement votre objet ` QTemporaryDir ` sur la pile, de le remplir de fichiers, d'effectuer des opérations sur ces fichiers, puis, à la sortie de la fonction, il se libère automatiquement de lui-même.

Le mode de suppression automatique est activé par défaut.

Voir également setAutoRemove() et remove().

QString QTemporaryDir::errorString() const

Si la fonction ` isValid()` renvoie ` false`, cette fonction renvoie la chaîne d'erreur expliquant pourquoi la création du répertoire temporaire a échoué. Dans le cas contraire, cette fonction renvoie une chaîne vide.

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

Renvoie le chemin d'accès d'un fichier situé dans le répertoire temporaire. Ne vérifie pas si le fichier existe réellement dans le répertoire. Les séparateurs multiples redondants ou les répertoires « . » et « .. » présents dans fileName ne sont pas supprimés (voir QDir::cleanPath()). Les chemins absolus ne sont pas autorisés.

Le chemin renvoyé sera relatif ou absolu selon que ` QTemporaryDir ` a été construit avec un chemin relatif ou absolu, respectivement.

bool QTemporaryDir::isValid() const

Renvoie « true » si l'QTemporaryDir ion a été créée avec succès.

QString QTemporaryDir::path() const

Renvoie le chemin d'accès au répertoire temporaire. La valeur est vide si l'QTemporaryDir n'a pas pu être créée.

Le chemin renvoyé sera relatif ou absolu selon que l'QTemporaryDir a été créé avec un chemin relatif ou absolu, respectivement.

bool QTemporaryDir::remove()

Supprime le répertoire temporaire, y compris tout son contenu.

Renvoie « true » si la suppression a réussi.

void QTemporaryDir::setAutoRemove(bool b)

Active le mode de suppression automatique de l'QTemporaryDir si la valeur « b » est définie sur « true ».

La suppression automatique est activée par défaut.

Voir également autoRemove() et remove().

[noexcept, since 6.4] void QTemporaryDir::swap(QTemporaryDir &other)

Remplace ce répertoire temporaire par other. Cette opération est très rapide et ne rencontre jamais d'échec.

Cette fonction a été introduite dans Qt 6.4.

[noexcept, since 6.4] QTemporaryDir &QTemporaryDir::operator=(QTemporaryDir &&other)

Cette opération attribue other à cette instance de QTemporaryDir.

Remarque : l’objet d’origine other est placé dans un état partiellement formé, dans lequel les seules opérations valides sont la destruction et l’affectation d’une nouvelle valeur.

Cette fonction a été introduite dans Qt 6.4.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.