QTemporaryDir Class
Die Klasse „QTemporaryDir“ erstellt ein eindeutiges Verzeichnis für die vorübergehende Nutzung. Mehr...
| Header: | #include <QTemporaryDir> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QTemporaryDir ist Teil von „Eingabe/Ausgabe und Netzwerk“.
Hinweis: Alle Funktionen dieser Klasse sind reentrant.
Öffentliche Funktionen
| 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) |
Ausführliche Beschreibung
QTemporaryDir dient dazu, auf sichere Weise eindeutige temporäre Verzeichnisse zu erstellen. Das Verzeichnis selbst wird vom Konstruktor angelegt. Der Name des temporären Verzeichnisses ist garantiert eindeutig (d. h., es wird garantiert kein vorhandenes Verzeichnis überschrieben), und das Verzeichnis wird anschließend bei der Zerstörung des QTemporaryDir-Objekts entfernt. Der Verzeichnisname wird entweder automatisch generiert oder auf der Grundlage einer Vorlage erstellt, die an den Konstruktor von QTemporaryDir übergeben wird.
Beispiel:
// 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.Es ist sehr wichtig, mit ` isValid()` zu prüfen, ob das temporäre Verzeichnis erstellt werden konnte. Verwenden Sie nicht ` exists()`, da ein standardmäßig konstruiertes ` QDir ` das aktuelle Verzeichnis darstellt, das bereits existiert.
Der Pfad zum temporären Verzeichnis kann durch Aufruf von ` path()` ermittelt werden.
Ein temporäres Verzeichnis besteht aus einem statischen Teil des Namens und einem Teil, der so berechnet wird, dass er eindeutig ist. Der Standardpfad wird anhand von ` QCoreApplication::applicationName()` (andernfalls ` qt_temp`) ermittelt und in den temporären Pfad eingefügt, wie er von ` QDir::tempPath()` zurückgegeben wird. Wenn Sie einen eigenen Pfad angeben, wird ein relativer Pfad standardmäßig nicht im temporären Verzeichnis abgelegt, sondern bezieht sich auf das aktuelle Arbeitsverzeichnis. In allen Fällen wird dem Pfad eine zufällige Zeichenfolge angehängt, um ihn eindeutig zu machen.
Siehe auch QDir::tempPath(), QDir und QTemporaryFile.
Dokumentation zu den Member-Funktionen
QTemporaryDir::QTemporaryDir()
Erstellt ein `QTemporaryDir` unter Verwendung des von ` QCoreApplication::applicationName()` zurückgegebenen Anwendungsnamens als Vorlage (ansonsten ` qt_temp`). Das Verzeichnis wird im temporären Verzeichnis des Systems gespeichert, ` QDir::tempPath()`.
Siehe auch ` QDir::tempPath()`.
[explicit] QTemporaryDir::QTemporaryDir(const QString &templatePath)
Erstellt ein `QTemporaryDir` mit der Vorlage ` templatePath`.
Wenn „ templatePath “ ein relativer Pfad ist, bezieht sich der Pfad auf das aktuelle Arbeitsverzeichnis. Mit „ QDir::tempPath()“ können Sie „ templatePath “ erstellen, wenn Sie das temporäre Verzeichnis des Systems verwenden möchten.
Endet templatePath mit XXXXXX, wird dies als dynamischer Teil des Verzeichnisnamens verwendet, andernfalls wird es angehängt. Im Gegensatz zu QTemporaryFile wird XXXXXX in der Mitte der Vorlagenzeichenfolge nicht unterstützt.
Siehe auch QDir::tempPath().
[noexcept, since 6.4] QTemporaryDir::QTemporaryDir(QTemporaryDir &&other)
Erstellt ein neues `QTemporaryDir` aus ` other`.
Hinweis: Das Objekt „ other “, aus dem der Move erfolgt, befindet sich in einem teilweise initialisierten Zustand, in dem nur die Zerstörung und die Zuweisung eines neuen Werts zulässig sind.
Diese Funktion wurde in Qt 6.4 eingeführt.
[noexcept] QTemporaryDir::~QTemporaryDir()
Löscht das Objekt des temporären Verzeichnisses. Wenn der Modus „Automatisches Löschen“ aktiviert war, wird das Verzeichnis einschließlich seines gesamten Inhalts automatisch gelöscht.
Siehe auch ` autoRemove()`.
bool QTemporaryDir::autoRemove() const
Gibt „ true “ zurück, wenn sich das „ QTemporaryDir “ im Modus „Auto-Remove“ befindet. Im Modus „Auto-Remove“ wird das Verzeichnis bei der Löschung automatisch von der Festplatte entfernt. Dadurch ist es sehr einfach, ein „ QTemporaryDir “-Objekt auf dem Stack zu erstellen, es mit Dateien zu füllen, etwas mit den Dateien zu tun und schließlich bei der Rückkehr der Funktion dafür zu sorgen, dass es automatisch aufgeräumt wird.
Der Auto-Remove-Modus ist standardmäßig aktiviert.
Siehe auch „ setAutoRemove()“ und „ remove()“.
QString QTemporaryDir::errorString() const
Wenn ` isValid()` den Wert ` false` zurückgibt, gibt diese Funktion die Fehlermeldung zurück, die erklärt, warum die Erstellung des temporären Verzeichnisses fehlgeschlagen ist. Andernfalls gibt diese Funktion eine leere Zeichenkette zurück.
QString QTemporaryDir::filePath(const QString &fileName) const
Gibt den Pfadnamen einer Datei im temporären Verzeichnis zurück. Es wird nicht geprüft, ob die Datei tatsächlich in dem Verzeichnis vorhanden ist. Überflüssige Mehrfachtrennzeichen oder „.“- und „..“-Verzeichnisse in fileName werden nicht entfernt (siehe QDir::cleanPath()). Absolute Pfade sind nicht zulässig.
Der zurückgegebene Pfad ist relativ oder absolut, je nachdem, ob ` QTemporaryDir ` mit einem relativen bzw. absoluten Pfad erstellt wurde.
bool QTemporaryDir::isValid() const
Gibt „ true “ zurück, wenn die „ QTemporaryDir “ erfolgreich erstellt wurde.
QString QTemporaryDir::path() const
Gibt den Pfad zum temporären Verzeichnis zurück. Ist leer, wenn die Datei „ QTemporaryDir “ nicht erstellt werden konnte.
Der zurückgegebene Pfad ist relativ oder absolut, je nachdem, ob „ QTemporaryDir “ mit einem relativen bzw. absoluten Pfad erstellt wurde.
bool QTemporaryDir::remove()
Löscht das temporäre Verzeichnis einschließlich seines gesamten Inhalts.
Gibt „ true “ zurück, wenn das Löschen erfolgreich war.
void QTemporaryDir::setAutoRemove(bool b)
Setzt die Eigenschaft „ QTemporaryDir “ in den Modus „Auto-Remove“, wenn „ b “ auf „true“ gesetzt ist.
Die automatische Entfernung ist standardmäßig aktiviert.
Siehe auch autoRemove() und remove().
[noexcept, since 6.4] void QTemporaryDir::swap(QTemporaryDir &other)
Ersetzt dieses temporäre Verzeichnis durch „ other “. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.
Diese Funktion wurde in Qt 6.4 eingeführt.
[noexcept, since 6.4] QTemporaryDir &QTemporaryDir::operator=(QTemporaryDir &&other)
Weist „ other “ dieser Instanz von „ QTemporaryDir “ zu.
Hinweis: Das verschobene Objekt other befindet sich in einem teilweise initialisierten Zustand, in dem die einzigen zulässigen Operationen die Zerstörung und die Zuweisung eines neuen Werts sind.
Diese Funktion wurde in Qt 6.4 eingeführt.
© 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.