2009-04-11 18 views
10

Eventuali duplicati:
Qt equivalent of PathAppend?classe Qt per la gestione dei percorsi dei file

C'è una classe che gestisce i percorsi di file in Qt? In particolare sto cercando qualcosa come Path.Combine di .NET.

So che ce n'è uno in boost :: filesystem ma mi chiedevo se ce n'è uno in Qt.

+0

Una risposta in [equivalente Qt di PathAppend?] (Http://stackoverflow.com/questions/13014145/qt-equivalent-of-pathappend) –

risposta

14

C'è QDir che potrebbe essere di aiuto (vedere QDir::relativeFilePath e QDir::canonicalPath e altri).

Citando QDir doc:

Un QDir è usato per manipolare percorso nomi, accedere alle informazioni riguardanti percorsi e file, e manipolare il file system sottostante .

+1

realtà QDir è di classe relativamente stupido. Ad esempio, non permette di cd() per dir inesistente. –

+3

questo uno scherzo giusto? Nessun programma può effettuare il cd in una directory non esistente. QDir e QFile sono molto flessibili, lo consiglio vivamente. –

+4

Ciò che Sergei intendeva era 'QDir :: cd()' che è (dovrebbe essere) solo una scorciatoia per 'return QDir (this-> filePath (arg))'. Questo non ha nulla a che fare con la modifica della CWD del processo. Se 'QDir :: cd()' consentirebbe nomi non esistenti, allora ciò renderebbe _la_ classe Qt per l'astrazione di un percorso (al momento, 'QString' serve a tale scopo - non!). Come ora, se Sergei ha ragione, non riesce a soddisfare il potenziale, che _indeed_ è un triste errore di progettazione. –

3

QDir fornisce l'accesso ai contenuti della directory e consente varie manipolazioni (mkdir ad esempio). Ma non ci sono classi per la manipolazione dei componenti del percorso, purtroppo.

8

Un'altra classe che potrebbe essere utile è QFileInfo.

Da documentazione Qt:

La classe QFileInfo fornisce informazioni del file system-indipendente.

QFileInfo fornisce informazioni sul nome di un file e la posizione (percorso) nella file system, i suoi diritti di accesso e se si tratta di una directory o simbolico collegamento, ecc dimensione del file e l'ultimo modifica/lettura volte sono disponibili anche . QFileInfo può anche essere utilizzato per ottenere informazioni su una risorsa Qt .

Problemi correlati