Mapa mental
config
Conteúdo do mapa
config
input
- o que eu tenho
- um arquivo txt
- um programa
- um arquivo txt
- o que preciso
- pegar os dados do arquivo txt
- separar o que é label e o que é valor
- organizar de forma coerente esses dados para facil acesso
- separar o que é label e o que é valor
- pegar os dados do arquivo txt
- algoritimo INPUT DE ARQUIVO
- num laço acessa-se linha a linha do arquivo
- verificar se não é comentario
- sinalizado com um(ns) caracter(s) especifico(s) no começo da string
- pode ser # ou // ou /* etc
- verifica-se se esse(s) caractere(s) existe(m) usando a função strstr() ou analoga
- pode ser # ou // ou /* etc
- se for, ignorar a linha e pular para proxima
- se não, criar substring até o delimitador de label
- sinalizado com um caracter especifico apos o termino da label
- pode ser : ou = etc
- verifica-se se esse caractere existe e sua posição na linha usando a função strstr() ou analoga
- pode ser : ou = etc
- criar outra subtring a partir do delimitador da label e finalizar no delimitador do valor
- sinalizado com um caracter especifico apos o termino da label
- usualmente usa-se ;
- verifica-se se esse caractere existe e sua posição na linha usando a função strstr() ou analoga
- usualmente usa-se ;
- push a label na lista.label e o valor no lista.value (ou no vetor se for assim decidido)
- sinalizado com um caracter especifico apos o termino da label
- sinalizado com um caracter especifico apos o termino da label
- se não, criar substring até o delimitador de label
- sinalizado com um(ns) caracter(s) especifico(s) no começo da string
- verificar se não é comentario
- estrutura necessaria
- struct config_no
- string label
- string value
- config_no *anterior
- config_no *proximo
- config_no *anterior
- string value
- string label
- duvida! Usar lista ou verificar quantas linhas tem e alocar um array???? DECIDIDO PELA LISTA POIS SERA CRIADA UM MODULO QUE PODERA SER PLGADO EM DIVERSOS OUTROS PROGRAMAS. BASICAMENTE ESSE MODULO PEGA O CONTEUDO DOS ARQUIVOS E ARMAZENA NUMA LISTA... ESTA LISTA ESTARA ACESSIVEL A UMA OUTRA CLASSE PARA PEGAR OS VALORES QUE A INTERESSAM, TALVEZ ATÉ TORNAR ESSA LISTA ACESSÍVEL DE TODO O PROGRAMA
- lista duplamente encadeada
- struct lista
- config_no *inicio
- config_no *fim
- int tamanho
- config_no *fim
- config_no *inicio
- struct lista
- struct config_no
- questoes que podem ocorrer
- a label pode estar repetida
- pode ocorrer sintaxe errada no arquivo txt
- como lidar com as letras maiusculas e minusculas
- o arquivo pode não ter todas os itens necessários
- a classe do INPUT DE ARQUIVOS poderia receber como parametro configurações default
- no construtor verifica se o arquivo existe
- se não entao cria um novo arquivo com as configurações default
- se sim entao executa o input do arquivo
- se não entao cria um novo arquivo com as configurações default
- existiria uma função getValue() que receberia uma string label como parametro
- essa função faz uma consulta na lista se essa label foi definida no arquivo
- se sim então retorna o respectivo value
- se não retorna o value das config default
- a lebel requerida pode não estar definida nem no arquivo nem no default
- se não retorna o value das config default
- se sim então retorna o respectivo value
- essa função faz uma consulta na lista se essa label foi definida no arquivo
- no construtor verifica se o arquivo existe
- a classe do INPUT DE ARQUIVOS poderia receber como parametro configurações default
- o arquivo pode não ter todas os itens necessários
- como lidar com as letras maiusculas e minusculas
- resolvido
- pode ocorrer sintaxe errada no arquivo txt
- a label pode estar repetida
- num laço acessa-se linha a linha do arquivo
- o que eu tenho
output
- o que eu tenho
- configurações default
- o que preciso
- inserir as configurações no arquivo
- também pode ser necessário atualizar dados
- uma função setConfig() resolveria esse problema
- como parametro receberia uma string label e outra novo valor
- essa função faria uma busca na lista pela label e inseriria o novo valor
- como parametro receberia uma string label e outra novo valor
- resolvido
- uma função setConfig() resolveria esse problema
- também pode ser necessário atualizar dados
- inserir as configurações no arquivo
- o que eu tenho
passos para implementar
- fila
- configIO
- config
- configIO
- fila
Informações
- Descrição
- Mapa Mental sobre config, criado por Marcos Volpato em 08-10-2015.
- Criado por
- Marcos Volpato
- Visualizações
- 0
- Avaliação