none
Script explorador de arquivos RRS feed

  • Discussão Geral

  • Boa noite pessoal.

    Preciso implementar um programa em C que funcione como um sistema explorador de arquivos.s. 
    O programa deve permitir explorar locais do computador AVANÇANDO e RETORNANDO diretórios e criando dinamicamente uma estrutura de dados na memória para armazenar a listagem dos diretórios e arquivos explorados, imprimindo na tela cada nível de exploração. 

    A estrutura de dados deve ser organizada em forma de lista encadeada conforme imagem abaixo:

    Cada elemento da estrutura deve ser composto pelo nome do diretório ou arquivo, uma referência para seu arquivo vizinho (se houver) e, no caso de diretório, uma referência para o seu primeiro filho, se houver. A seguir é apresentada uma sugestão para a definição do elemento. 
     

    Até o momento o que eu tenho é:

    typedef struct sElemento{   
        char nome[100];    
        struct sElemento *vizinho;   
        struct sElemento *filho;  
        } ELEMENTO; 

    O Script deve conter o trecho listado acima. Alguém poderia me ajudar? Sou iniciante em C.

    quarta-feira, 11 de novembro de 2015 00:24

Todas as Respostas

  • Boa tarde!

    Na sua escrita, você já fala o que precisa. 

    Lista encadeada com cabeça, estrutura e ponteiro.

    Primeira coisa o seu nó deve conter um "pasta raiz", alguns escolhem a pasta do usuário, outros a pasta C:... Você que define. Você precisa fazer, porque o seu programa tem que saber que ali que inicializa. 

    Mas antes de iniciar a lista, você deve passar a informação do caminho para a sua estrutura, e quando iniciar a lista você aponta esse caminho inicial para o nó. E você vai precisar de um ponteiro para esse tipo typedef.

    A medida que a pessoa vai avançado pelo diretório, você captura a string, atualiza a estrutura e avança com nó. 

    Aconselho a você a pesquisar sobre lista encadeada com cabeça, e você verá como é tranquilo. Com isso, é possível fazer a consulta, caso ele queira saber quais pastas e arquivos existem naquele diretório(Tipo o DIR - Windows), dar para voltar o diretório, pesquisando o nó anterior. 

    Qualquer dúvida, post o que você conseguiu fazer, que eu aponto o que falta. Confesso que é chato no inicio, mas depois fica tranquilo a lógica. 

    quarta-feira, 30 de março de 2016 16:54