2010-06-22 4 views
7

Per ciascun sistema operativo è disponibile un percorso per la memorizzazione di dati temporanei. Potrebbe essere come: C:/Utenti/[nome utente]/AppData/Temp (o giù di lì). Come posso ottenere questo percorso indipendentemente dal sistema operativo con QT?Qt - Come ottenere la dir "Temp" per un utente arbitrario?

risposta

18

Non è possibile ottenere la directory temporanea per un utente arbitrario, ma per l'utente corrente è possibile utilizzare QDir::temp() o QDir::tempPath().

+0

Buon punto sull'arbitrario! = utente corrente. La directory per un utente arbitrario può infatti essere creata su richiesta (comune negli ambienti aziendali Win32) – MSalters

+0

@Job Il post è un po 'vecchio, c'è un modo per ottenere la directory tmp dell'utente? Se viene utilizzato l'intero sistema, quando diversi utenti hanno effettuato l'accesso causa una collisione. – quimnuss

4

Si desidera ottenere QDesktopServices::TempLocation. Vedi http://doc.trolltech.com/qtextended4.4/qdesktopservices.html#StandardLocation-enum per i dettagli.

+0

** Si prega di notare ** ciò che [i documenti Qt attuali] (http://doc.qt.io/qt-5/qdesktopservices-obsolete.html) dicono: "I seguenti membri di classe QDesktopServices sono obsoleti. sono forniti per mantenere il vecchio codice sorgente funzionante, consigliamo vivamente di non utilizzarli in un nuovo codice. " - sembra che questo membro della classe sia deprecato ... – mozzbozz