Noções básicas de acesso a arquivos sequenciais em c programação

A maneira mais simples que a informação de programação C é armazenado em um arquivo é sequencialmente,

um byte a seguir ao outro. O arquivo contém uma longa corrente de dados.

acesso a arquivos em C é simplesmente uma outra forma de I / O. Ao invés de ir para a exibição, a entrada ou saída vai para um arquivo. Um arquivo é aberto usando o fopen () função:

lidar = fopen (nome de arquivo, de modo) -

A função fopen () requer dois argumentos, ambos cordas. O primeiro é um nome do arquivo- a segunda é uma modo. A função fopen () retorna um arquivo lidar com, que é um ponteiro utilizado para fazer referência ao ficheiro. Esse ponteiro é um tipo de arquivo de variável.

ModoAbrir arquivo paraCriar arquivo?Notas
"uma"acrescentandosimEle acrescenta que o fim de uma file- um arquivo existente é criado se ele
doesn&rsquo-t existir.
”A +”Anexando e leiturasimA informação é adicionado ao final do arquivo.
“R”LeituraNãoSe o arquivo doesn&rsquo-t existir, fopen () retorna um erro.
“R +”Leitura e escritaNãoSe o arquivo doesn&rsquo-t existir, é devolvido um erro.
"W"EscrevendosimO arquivo existente será substituído se o mesmo nome é usado.
“W +”Escrita e leiturasimO arquivo existente será substituído.

o modo é uma string. Mesmo quando apenas um caractere for especificado, ele deve ser colocado entre aspas duplas.

Depois que o arquivo é aberto, você usa o lidar com variável para referenciar o arquivo como você ler e escrever. O ficheiro de funções de I / O são semelhantes ao seu padrão I / O homólogos, mas com um prefixo f. Para gravar em um arquivo, você pode usar o fprintf (), fputs (), fputchar () e funções similares. Leitura de um arquivo usa as fscanf (), fgets () e funções similares.

Você fecha o arquivo usando a função fclose () com o identificador de arquivo como seu argumento.

Como escrever um texto para um arquivo

Escrever esse arquivo demonstra o processo básico de criação de um novo arquivo, escrever um texto para o arquivo, e em seguida, fechando o acesso ao arquivo.

Video: Programar em C - Manipulação de Arquivos txt em C / Escrever Dados - Aula 81

Escrevem que ARQUIVO

#include #include int main () {FILE * FH-fh = fopen ("hello.txt","W") -Se (fh == null) {puts ("Não é possível abrir esse arquivo!") -exit (1) -} fprintf (fh,"Olha o que eu fiz! N") -fclose (fh) -Retornar (0) -}

Linha 6 cria o identificador de arquivo, fh. É um ponteiro. As lojas ponteiro do resultado da função fopen () a partir da linha 8. O hello.txt arquivo é criado usando o modo “w” (escrever). Se o arquivo existir, é substituído.

A instrução if verifica para confirmar que o arquivo foi devidamente aberta. Se não fosse, o valor de fh é NULL, e sejam tomadas medidas adequadas.

A função fprintf () escreve texto para o arquivo na Linha 14. O formato é o mesmo que para printf (), embora o identificador de arquivo deve ser incluído como um argumento.

Finalmente, Linha 15 fecha o arquivo usando a função fclose (). Esta declaração é um passo necessário para qualquer tipo de programação de acesso a arquivos.

Exercício 1: Copie o código-fonte de Escrever esse arquivo em seu editor. Criar e executar o programa.

a saída do programa vai para um arquivo, para que você não ver nada exibido quando ele é executado. Use o navegador de arquivos do seu computador para localizar o arquivo e abri-lo. Ou você pode escrever um programa que lê o texto daquele mesmo arquivo.

Como ler o texto de um arquivo



As funções de texto de leitura padrão C são usados ​​para ler o texto de um arquivo da mesma forma que ler o texto a partir do teclado. Para ler o texto um carácter de cada vez, use a função fgetc ().

Ler esse arquivo

#include #include int main () {FILE * FH-int ch-fh = fopen ("hello.txt","r") -Se (fh == null) {puts ("Não é possível abrir esse arquivo!") -exit (1) -} while ((ch = fgetc (FH)) = EOF) putchar (ch) -fclose (fh) -Retornar (0) -}

Linha 9 em ler esse arquivo abre a hello.txt arquivo somente para leitura. O arquivo deve existir ou então ocorre um erro.

Video: Curso de programação em C #01 | Introdução e variáveis

O loop while na linha 15 exibe o conteúdo do arquivo um carácter de cada vez. A função fgetc () lê um caractere do arquivo identificado por fh alça. Esse personagem é armazenado em ch variável. O resultado é comparado com o final da constante Arquivo. Quando há uma correspondência, o arquivo foi completamente ler e o loop while pára. Caso contrário, o personagem que é lido é exibida na Linha 16.

Exercício 2: Criar um novo programa usando o código-fonte apresentado na ler esse arquivo. Construir e executar.

Video: Programação C - Aula 07 - while, do-while, for - Estruturas de repetição

O programa exibe o conteúdo do arquivo criado pelo Exercício 1- caso contrário, você vê a mensagem de erro.

Exercício 3: Modificar seu código-fonte do Exercício 1 para escrever um segundo string para o arquivo. Adicionar a seguinte declaração após Linha 14:

fputs ("Meu programa C escreveu este file.n", Fh) -

Ao contrário de usar as puts () declaração, você precisa especificar um caractere de nova linha para fputs () de saída. Além disso, o argumento de identificador de arquivo aparece após a corda, que é incomum para uma função de arquivo de linguagem C.

Os dois file-escrita funções fprintf () e fputs () escrever um texto para o arquivo sequencialmente, um caractere após o outro. O processo funciona como escrever um texto para a tela, mas em vez disso os personagens são salvos em um arquivo no armazenamento permanente.

A função fgets () lê uma cadeia inteira de texto de um arquivo. Para fazê-lo funcionar, você precisa de um buffer de entrada, o número de caracteres de ler, e o identificador de arquivo.

Video: Linguagem C: Estrutura Sequencial | Bibliotecas, Variáveis, Primeiros programas e mais

Engolindo cadeias de texto

() {Int ARQUIVO tampão #include #include principal * FH-char [64] -fh = fopen ("hello.txt","r") -Se (fh == null) {puts ("Não é possível abrir esse arquivo!") -exit (1) -} enquanto (fgets (tampão, 64, fh)) printf ("% s", Tampão) -fclose (fh) -Retornar (0) -}

A função fgets () aparece na linha 15 como o estado do circuito de tempo. Isso porque fgets () retorna um ponteiro para a string que é ler, e quando nenhuma seqüência é lido, ele retorna um NULL. Esse valor pára o loop. Caso contrário, a função printf () na linha 16 exibe a entrada.

O tamanho da memória intermédia e o tamanho de caracteres lidos em engolir cadeias de texto são idênticos. Isso porque o no final da string é lida a partir do arquivo e não é interpretado como um marcador de fim-de-arquivo.

Exercício 4: Digite o código-fonte do engolindo cadeias de texto em seu editor. Construir e executar.


Publicações relacionadas