Como ler um arquivo de texto e imprimir todas as cordas em C

Como ler um arquivo de texto e imprimir todas as cordas em C

Lendo um arquivo de texto e imprimindo tudo cordas é uma tarefa essencial que é frequentemente realizada por programadores C. É importante entender o básico de leitura a arquivo de texto em c e como imprimir o cordas a partir dele antes de tentar esta tarefa.

A leitura de um arquivo de texto e a impressão de todas as cordas que ele contém serão demonstradas usando a programação C neste artigo.

Leia um arquivo de texto e imprima todas as cordas em C

Existem quatro funções para ler um arquivo de texto e imprimir todas as cordas em C, que são as seguintes:

  • fret ()
  • fgets ()
  • fScanf ()
  • fgetc ()

Método 1: Função Fread ()

Dados são Leia do arquivo e armazenado em um buffer usando a função C fret (). Para contar elementos em um buffer de matriz, o fret () Método lê a partir do fluxo de entrada fornecido como parâmetro de função. Como cada função de caractere diz, o indicador de posição do arquivo para o fluxo de entrada especificado avança para a frente.

O fret () Método em C tem a sintaxe.

size_t fret (void * array_buffer, tamanho_t tamanho, size_t contagem, arquivo * file_stream)

Vejamos os parâmetros de função fread () com mais detalhes:

Buffer de matriz: Os dados são temporariamente mantidos no buffer de um computador, um espaço de memória. Este argumento é um ponteiro referente ao local em memória do buffer que conterá os dados ler do fluxo de entrada.

tamanho: Este argumento instrui a função de quantos bytes de dados serão lidos no fluxo de entrada para cada bloco.

contar: Ele especifica quantos caracteres serão lidos no fluxo de entrada de dados.

file_stream: É um ponteiro referente a um objeto de arquivo.

#incluir
#incluir
int main ()
Arquivo *arquivo;
buffer de char [100];
arquivo = fopen ("c_file.txt "," r ");
if (arquivo == null)
printf ("Erro: não foi possível abrir o arquivo \ n");
retornar 1;

int conting = fread (& buffer, sizeof (char), 100, arquivo);
fclose (arquivo);
printf ("Os dados lidos do arquivo são: %s \ n", buffer);
printf ("Número de elementos Leia: %d", contagem);
fclose (arquivo);
retornar 0;

Neste exemplo, definimos um buffer de matriz de caracteres de tamanho 100 antes de utilizar fopen () Para abrir o arquivo de texto C_file.TXT no modo de leitura. Usando uma instrução IF, determinamos se o arquivo foi aberto com sucesso. A etapa a seguir é ler até 100 bytes de dados do arquivo usando fret (). O buffer de destino, neste caso, a matriz de buffer, é o primeiro parâmetro a fret (). O segundo argumento, tamanho de, determina o tamanho de cada item a ser lido enquanto estamos lendo em personagens. A terceira entrada é a quantidade a ser lida, que neste caso é 100. O ponteiro de arquivo é o quarto parâmetro. Por fim, nós usamos printf () Para imprimir os dados lidos no arquivo e fclose () Para fechar o arquivo. A execução deste programa resultaria em resultados como este, se C_file.TXT:

Saída

Método 2: função fgets ()

O idioma C fgets () Método lê N caracteres do fluxo para a string str. O fgets () o método continua a ler os personagens do fluxo até (N-1) Os caracteres foram lidos, um personagem de nova linha foi detectado ou o final do arquivo (EOF) foi alcançado.

#incluir
int main ()
Arquivo *arquivo;
buffer de char [100];
arquivo = fopen ("c_file.txt "," r ");
if (arquivo == null)
printf ("Erro: não foi possível abrir o arquivo \ n");
retornar 1;

while (fgets (buffer, 100, arquivo))
printf ("String leia do arquivo: %s", buffer);

fclose (arquivo);
retornar 0;

Este exemplo usa fopen () Para abrir um arquivo de texto chamado C_file.TXT no modo de leitura depois de declarar primeiro um buffer de matriz de caracteres 100. Usando uma instrução IF, determinamos se o arquivo foi aberto com sucesso. Depois disso, empregamos um pouco de loop e fgets () para ler linhas de texto do arquivo usando um ponteiro de arquivo. Usando printf () Dentro do loop, imprimimos cada linha de texto. A execução deste programa forneceria a saída:

Saída

Método 3: Função FScanf ()

Um método de biblioteca padrão chamado fScanf () aceita uma variedade de parâmetros e os transforma em valores que seu aplicativo pode utilizar. Enquanto Lendo do arquivo, ele retornará a sequência do formato no lugar de qualquer coisa que prevê ver dentro. Para impedir que seu software interprete a sequência do formato como parte de sua própria sintaxe, ele deve estar cercado em citações ("").

#incluir
int main ()
Arquivo *arquivo;
int num1, num2, num3;
arquivo = fopen ("c_file.txt "," r ");
if (arquivo == null)
printf ("Erro: não foi possível abrir o arquivo \ n");
retornar 1;

fScanf (arquivo, " %d %d", & num1, & num2, & num3);
printf ("Os números lidos no arquivo são: %d, %d, %d \ n", num1, num2, num3);
fclose (arquivo);
retornar 0;

Este exemplo abre o arquivo C_file.TXT No modo de leitura, declarando primeiro 3 variáveis ​​int, num1, num2 e num3. Usando uma instrução IF, determinamos se o arquivo foi aberto com sucesso. A etapa a seguir é ler três números do arquivo usando fScanf () e a %d Especificador de formato. As variáveis ​​num1, num2 e num3 são onde os valores são mantidos. Por fim, nós usamos printf () Para produzir os valores dessas variáveis ​​e fclose () Para fechar o arquivo. A execução deste programa resultaria nos resultados mostrados abaixo:

Saída

Método 4: função fgetc ()

Um arquivo pode ser ler personagem por personagem usando o fgetc () função. O código ASCII para o caractere que esta função lê é retornado por esta função. O personagem do local especificado do ponteiro do arquivo é retornado. O personagem a seguir é lido depois que o personagem é lido, de acordo com o ponteiro do arquivo. Este método retorna um arquivo EOF se o ponteiro estiver no final do arquivo ou se houver um problema.

#incluir
int main ()
Arquivo *arquivo;
char c;
arquivo = fopen ("c_file.txt "," r ");
if (arquivo == null)
printf ("Erro: não foi possível abrir o arquivo \ n");
retornar 1;

while ((c = fgetc (arquivo)) != Eof)
printf ("%c", c);

fclose (arquivo);
retornar 0;

Nesse caso, usamos o fopen () comando para abrir o arquivo de texto C_file.TXT no modo de leitura. Usando uma instrução IF, determinamos se o arquivo foi aberto com sucesso. Depois disso, empregamos um pouco de loop e fgetc () Para ler os personagens do arquivo. O caractere recebido do arquivo é atribuído à variável c dentro do loop antes de ser impresso usando printf (). O loop continua funcionando até o Eof (Fim do arquivo) Constant detecta o final do arquivo. Executar este programa obteria os seguintes resultados, se C_file.TXT contém a palavra “Linuxhint”.

Saída

Conclusão

Usando as etapas descritas acima, C pode ser usado para Leia um arquivo de texto e Imprima todas as cordas contém. Começa usando o fopen () chamada do sistema para abrir o arquivo, seguido pelo uso de fscanf (), fread (), fgets (), fgetc () Para ler os dados. Depois, o arquivo é fechado usando fclose () e um loop é usado para imprimir as cordas. Ao empregar essas técnicas, C pode ser usado para ajudar a ler e imprimir dados de maneira eficiente.