Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    3

    [C++] Ottenere la lista di file con una data estensione in una directory e sotto directory?

    Come posso riuscire a ottenere su linux a fare una ricerca degli "mp3" presenti in una cartella e nelle sue sotto cartelle?

    Stavo pensando di usare il comando system, generare un file e caricarlo in un vettore, ma non esiste un via più "pulita"? L'ideale sarebbe l'os.walk del python, esiste una cosa del genere in c++?


    Grazie!
    Ultima modifica di Delayer; 30-10-2013 a 23:14

  2. #2
    Usando le sole syscall POSIX, devi fare una ricerca ricorsiva usando opendir/readdir/closedir; ovvero, parti leggendo tutto il contenuto della tua prima directory; per ogni risultato ottenuto tramite readdir, se è un file (cosa che puoi ottenere guardando il membro d_type, o, se risulta DT_UNKNOWN, tramite lstat) verifichi se l'estensione è .mp3 e ci fai quel che ti pare, se è una directory richiami la tua funzione ricorsivamente sulla sottodirectory.
    In alternativa, puoi usare librerie come Boost FileSystem, o, se usi le Qt, classi come QDir & co.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    3
    Grazie, ha funzionato

  4. #4
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.