이 페이지에서

QTemporaryDir Class

QTemporaryDir 클래스는 임시 용도로 사용할 고유한 디렉터리를 생성합니다. 더 보기...

헤더: #include <QTemporaryDir>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

참고: 이 클래스의 모든 함수는 재진입 가능합니다.

공개 함수

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)

상세 설명

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()

QCoreApplication::applicationName()에서 반환된 애플리케이션 이름을 템플릿으로 사용하여 QTemporaryDir를 생성합니다(그렇지 않은 경우 qt_temp). 이 디렉터리는 시스템의 임시 디렉터리인 QDir::tempPath()에 저장됩니다.

QDir::tempPath()도 참조하십시오 .

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

templatePath 를 템플릿으로 하여 QTemporaryDir 객체를 생성합니다.

templatePath 가 상대 경로인 경우, 해당 경로는 현재 작업 디렉터리를 기준으로 합니다. 시스템의 임시 디렉터리를 사용하려면 QDir::tempPath()를 사용하여 templatePath 를 생성할 수 있습니다.

templatePath 가 XXXXXX로 끝나는 경우, 이는 디렉터리 이름의 동적 부분으로 사용되며, 그렇지 않은 경우 끝에 추가됩니다. QTemporaryFile 와 달리, 템플릿 문자열 중간에 있는 XXXXXX는 지원되지 않습니다.

QDir::tempPath()함수도 참조하십시오 .

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

other 에서 새로운 QTemporaryDir 객체를 생성합니다.

참고: 이동된대상인 ` other `는 부분적으로 형성된 상태로 전환되며, 이 상태에서는 소멸과 새 값 할당만이 유효한 연산입니다.

이 함수는 Qt 6.4에서 도입되었습니다.

[noexcept] QTemporaryDir::~QTemporaryDir()

임시 디렉터리 객체를 삭제합니다. 자동 삭제 모드가 설정된 경우, 해당 디렉터리와 그 안의 모든 내용을 자동으로 삭제합니다.

autoRemove()도 참조하십시오 .

bool QTemporaryDir::autoRemove() const

QTemporaryDir 가 자동 제거 모드에 있으면 ` true `를 반환합니다. 자동 제거 모드는 객체가 소멸될 때 디스크에서 해당 디렉터리를 자동으로 삭제합니다. 이를 통해 스택에 ` QTemporaryDir ` 객체를 생성하고, 파일을 채운 다음, 파일을 처리한 후, 함수 반환 시 객체가 자동으로 정리되도록 매우 간편하게 처리할 수 있습니다.

자동 제거 기능은 기본적으로 활성화되어 있습니다.

setAutoRemove() 및 remove()도 참조하십시오 .

QString QTemporaryDir::errorString() const

isValid()가 false 를 반환하는 경우, 이 함수는 임시 디렉터리의 생성이 실패한 원인을 설명하는 오류 문자열을 반환합니다. 그렇지 않은 경우, 이 함수는 빈 문자열을 반환합니다.

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

임시 디렉터리에 있는 파일의 경로명을 반환합니다. 해당 파일이 디렉터리에 실제로 존재하는지 여부는 확인하지 않습니다. fileName 에 포함된 중복된 구분자나 "." 및 ".." 디렉터리는 제거되지 않습니다( QDir::cleanPath() 참조). 절대 경로는 허용되지 않습니다.

반환되는 경로는 QTemporaryDir 가 상대 경로 또는 절대 경로로 생성되었는지에 따라 각각 상대 경로 또는 절대 경로가 됩니다.

bool QTemporaryDir::isValid() const

QTemporaryDir 가 성공적으로 생성된 경우 true 를 반환합니다.

QString QTemporaryDir::path() const

임시 디렉터리의 경로를 반환합니다. QTemporaryDir 를 생성할 수 없는 경우 빈 값을 반환합니다.

반환되는 경로는 ` QTemporaryDir `가 상대 경로 또는 절대 경로로 생성되었는지에 따라 각각 상대 경로 또는 절대 경로가 됩니다.

bool QTemporaryDir::remove()

임시 디렉터리와 그 안의 모든 내용을 삭제합니다.

삭제가 성공하면 ` true `를 반환합니다.

void QTemporaryDir::setAutoRemove(bool b)

b 가 true인 경우, QTemporaryDir 를 자동 제거 모드로 설정합니다.

자동 제거 기능은 기본적으로 활성화되어 있습니다.

autoRemove() 및 remove()도 참조하십시오 .

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

이 임시 디렉터리를 other 로 교체합니다. 이 작업은 매우 빠르며 절대 실패하지 않습니다.

이 함수는 Qt 6.4에서 도입되었습니다.

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

other 를 이 QTemporaryDir 인스턴스에 이동 할당합니다.

참고: 이동된객체 other 는 부분적으로 형성된 상태가 되며, 이 상태에서는 소멸과 새 값 할당만이 유효한 연산입니다.

이 함수는 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.