W Qt, jak mogę sprawdzić, czy dany folder istnieje w bieżącym katalogu?
Jeśli nie istnieje, jak mogę utworzyć pusty folder?
W Qt, jak mogę sprawdzić, czy dany folder istnieje w bieżącym katalogu?
Jeśli nie istnieje, jak mogę utworzyć pusty folder?
Odpowiedzi:
Aby sprawdzić, czy istnieje katalog o nazwie „Folder”, użyj:
QDir("Folder").exists();
Aby utworzyć nowy folder o nazwie „MójFolder”, użyj:
QDir().mkdir("MyFolder");
QDir::exists("absolutepath")
iQDir::mkdir(""absolutepath")
QDir::mkdir("relative_path")
. Nie można mieć obu przeciążeń.
Kiedy używasz QDir.mkpath () zwraca true, jeśli ścieżka już istnieje, z drugiej strony QDir.mkdir () zwraca false, jeśli ścieżka już istnieje. W zależności od programu musisz wybrać, który pasuje lepiej.
Możesz zobaczyć więcej w dokumentacji Qt
Jeśli potrzebujesz pustego folderu, możesz zapętlić, aż uzyskasz pusty folder
QString folder= QString ("%1").arg(QDateTime::currentMSecsSinceEpoch());
while(QDir(folder).exists())
{
folder= QString ("%1").arg(QDateTime::currentMSecsSinceEpoch());
}
QDir().mkdir(folder);
W tym przypadku otrzymasz nazwę folderu z numerem.