Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

dario1133

pesquizar em ficheiros!!

Mensagens Recomendadas

dario1133    0
dario1133

gostava que me dessem um exemplo em c++ de como posso pesquizar num ficheiro.

por exemplo se tiver o ficheiro :

Zé,18;

Manel,20;

Carlos,19;

António,33;

Carlos, 11;

como posso pesquizar todos os Carlos que constam do ficheiro...???

Obrigado!!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
_deXter    0
_deXter

O que é que não sabes em particular?

Em traços gerais, será..

- Abrir o ficheiro para leitura, e ir lendo enquanto nao estiver no final do ficheiro

- Criar por exemplo uma estrutura que associa uma string e um int

- Ter um vector de estruturas

- Pesquisar o vector pela string da estrutura..

Enfim, haverá várias forma de o fazer, dependendo do problema e do teu grau de conhecimentos. Mas será mais fácil ajudar se colocares dúvidas em concreto...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Njay    0
Njay

Se forem só ficheiros de texto, deve haver alguma função, perdão, método, que leia linha-a-linha. Não é preciso estar a ler tudo, guardar em memória e depois pesquiSar aí. Lês uma linha, pesquiSas nesssa linha (algum método da classe String/CString?), e depois "deita-la fora" e lês a próxima, e assim sucessivamente.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
TheDark    0
TheDark

É uma função, mesmo.

string linha;
ifstream ficheiro("ficheiro.txt");
if (!ficheiro) { /* correu mal */ }

getline(ficheiro, linha); //linha fica com a 1 linha do ficheiro

depois é questão de utilizares o método linha.find para encontrar a posição da vírgula, e a posição do ponto e vírgula, utilizar o método linha.substring para obter o nome e a idade, é fazer parse à idade caso seja para guardar como número.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade