• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Lips0fAshes

[Ajuda] Procurar em um ficheiro de texto

5 mensagens neste tópico

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.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se quiseres contar o numero de linhas de um ficheiro de texto, experimenta contar o numero de '\n''s...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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.

0

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