So ändern Sie das aktuelle Arbeitsverzeichnis?
Arbeite ich an einem Programm, das eine Datei aus einem bestimmten Verzeichnis, und kopiert Sie in das Arbeitsverzeichnis von Qt zu Lesen von meiner Bewerbung. Jetzt, meine aktuelle Pfad ist:
/Users/softwareDev/Desktop/User1/build-viewer-Desktop_Qt_5_4_0_clang_64bit-Debug/viewer.app/Conents/MacOS/viewer
Zu bekommen, habe ich:
qDebug() << QDir::current().path();
bestätigt und dieses Verzeichnis mit:
qDebug() << QCoreApplication::applicationDirPath();
Meine Frage ist, wie würde ich mich über die änderung dieses Pfads?
- Here. Von einer Antwort habe ich akzeptiert, obwohl ich gebeten, eine andere Frage.
- dein link ist fantastisch, ich danke Euch für die Hilfe, es funktioniert, wenn ich zum ausführen der Anwendung benötigt auf dem Mac. Allerdings gibt es einen Weg, um diese Arbeit zu machen, wenn die Portierung auf ein iOS-Gerät?
- Hmm...ich habe keine Erfahrung in der Entwicklung von mobilen Geräten und, der link ist alles, woran ich denken kann, wenn im Gespräch zu ändern working directory. Vielleicht können Sie angeben, Ihre Bedürfnisse für iOS in den Titel und die Frage?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht sicher, was genau meinen Sie mit "Qt" in diesem Zusammenhang. Wenn es ist, wo die Bibliothek installiert ist, sollten Sie assoziieren, dass der Pfad mit dem Dateinamen und dann verarbeitet werden, anstatt das aktuelle Arbeitsverzeichnis, fair zu sein.
Aber warum willst du um das Arbeitsverzeichnis zu ändern überhaupt? Während Sie vielleicht wollen, lösen ein problem, könntest du sofort die Einführung einer ganzen Reihe von anderen. Es fühlt sich an wie die XY-problem. Ich glaube, Sie brauchen eine andere Lösung in der Praxis, wie zum Beispiel die oben genannten.
Wenn Sie immer noch darauf bestehen, auf eine änderung der aktuellen Arbeitsverzeichnis oder welchem Grund auch immer, können Sie mit dieser statischen Methode:
Daher, Sie wäre die Ausstellung so etwas wie dieses:
main.cpp
main.pro -
Erstellen und Ausführen
- Ausgang
QDir
hat eine Funktion,setCurrent
für diesen Zweck.Mehr an http://doc.qt.io/qt-4.8/qdir.html#setCurrent.