Criar e Escrever em Arquivos C

CBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como criar um novo arquivo na linguagem de programação C e escrever dados nele. O tipo de dado FILE é usado para representar um arquivo em C, e a função fopen() é usada para abrir um arquivo para leitura, escrita ou anexação. Uma vez que um arquivo é aberto, os dados podem ser escritos nele usando a função fprintf(), e a função fclose() é usada para fechar o arquivo após a escrita dos dados.

Crie um novo programa C usando o terminal

Abra o terminal e crie um novo programa C chamado main.c no diretório ~/project/ usando o comando:

nano ~/project/main.c

Inclua os arquivos de cabeçalho necessários

No arquivo main.c, inclua os arquivos de cabeçalho necessários:

#include <stdio.h>
#include <stdlib.h>

Defina variáveis e ponteiros

Defina variáveis e um ponteiro do tipo FILE para armazenar o arquivo e seu conteúdo:

FILE *fptr;
char name[20];
int age;
float salary;

Abrir um arquivo para escrita

Abra um arquivo para escrita usando a função fopen(). Se o arquivo não existir, ele será criado. Caso contrário, seu conteúdo será sobrescrito:

fptr = fopen("emp.txt", "w");
if (fptr == NULL)
{
    printf("File does not exist.\n");
    return 1;
}

Escrever dados no arquivo

Peça ao usuário para inserir o nome, idade e salário do funcionário e escreva-os no arquivo usando a função fprintf():

printf("Enter the name:\n");
scanf("%s", name);
fprintf(fptr, "Name  = %s\n", name);

printf("Enter the age:\n");
scanf("%d", &age);
fprintf(fptr, "Age  = %d\n", age);

printf("Enter the salary:\n");
scanf("%f", &salary);
fprintf(fptr, "Salary  = %.2f\n", salary);

Fechar o arquivo

Feche o arquivo usando a função fclose():

fclose(fptr);

Completar o código

#include <stdio.h>
#include <stdlib.h>

int main() {
    FILE *fptr;
    char name[20];
    int age;
    float salary;

    // open for writing
    fptr = fopen("emp.txt", "w");
    if (fptr == NULL) {
        printf("File does not exist.\n");
        return 1;
    }

    printf("Enter the name:\n");
    scanf("%s", name);
    fprintf(fptr, "Name  = %s\n", name);

    printf("Enter the age:\n");
    scanf("%d", &age);
    fprintf(fptr, "Age  = %d\n", age);

    printf("Enter the salary:\n");
    scanf("%f", &salary);
    fprintf(fptr, "Salary  = %.2f\n", salary);

    fclose(fptr);
    return 0;
}

Resumo

Neste laboratório, você aprendeu como criar um novo arquivo na linguagem de programação C e escrever dados nele usando as funções FILE, fopen(), fprintf() e fclose(). Lembre-se sempre de fechar o arquivo após escrever os dados para evitar a perda de dados.