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

Lips0fAshes

[Ajuda] Procurar em um ficheiro de texto

Mensagens Recomendadas

Lips0fAshes    0
Lips0fAshes

Boas fiz para a escola um software em C para criar ficheiros texto, adicionar informação a esses ficheiros , ler desses ficheiros e apagar o conteúdo desses ficheiros. tenho o código todo funcional mas gostava de adicionar 2 opções, 1 de procurar por registo dentro do ficheiro outra para apagar só 1 registo depois de inserir o código.

ja procurei pelas funcoes de C para ficheiros como fscanf, e outras axo que da para procurar por bytes mas por outra maneira nao encontrei nada.

gostava de saber se sabem alguma maneira de procurar o que o utilizador inserir na consola, e se existe forma de contar o numero de linhas que estao escritas no txt

Código.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Lips0fAshes    0
Lips0fAshes

ao gravar dentro do ficheiro os \n nao sao introduzidos no ficheiro logo nao os consigo contar

anyway ja entreguei o trabalho mas gostava que me ajudasse na mesma se é possivel ou nao

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rat    0
Rat

Consegues ler os '\n' sim, experimenta criar um ficheiro de texto chamado teste.txt e executa o seguinte codigo:

#include <stdio.h>

int main()
{
char c;
int num=0;

FILE *p=fopen("teste.txt", "r");    

c=' ';

while(c!=EOF)
{
c=fgetc(p);              
  
if(c=='\n')
{
  num++;         
}
              
}
    printf("\n\n%d\n\n",num);
    return(0);
}

desculpa la a indentação

ja ao resto da questão nao sou a pessoa indecada para te ajudar  :D

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
edsousa    0
edsousa

Para a procura num ficheiro de texto deves querer algo como char *strstr(const char *string, const char *substring).

Se for um ficheiro de registos tens que ler registo a registo e aplicar a função de procura em cada registo.

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 a nossa Política de Privacidade