Importância do manuseio de arquivos em C++ e como fazê-lo [2022]
Publicados: 2021-01-04Introdução
C++ ou 'o Novo C', pois é baseado na estrutura do C e em recursos adicionais. C++ também é creditado por influenciar várias linguagens, como C# e outras edições mais recentes de C. Também é reconhecido com a introdução da Programação Orientada a Objetos. Isso estabelece o fato de quão essencial C++ tem sido para o mundo da programação.
Este artigo é sobre uma das tarefas mais básicas, porém cruciais, a entrega de arquivos em C++ . Agora, os arquivos são importantes para programação, bem como para outros setores, pois são os setores de armazenamento. É aqui que todos os dados são reunidos. Todo o conceito de manipulação de arquivos pode ser dividido em quatro seções –
- Abrindo um arquivo
- Gravando em um arquivo
- Lendo de um arquivo
- Fechar um arquivo
Obtenha o curso de desenvolvimento de software das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.
Importância da manipulação de arquivos em C++
Antes de embarcarmos nesta jornada de C++, vamos levar alguns momentos para entender por que precisamos de manipulação de arquivos. Em termos simples, ele oferece um mecanismo através do qual você pode coletar a saída de um programa em um arquivo e, em seguida, realizar várias operações nele.
Há mais um termo, “Stream”, que usaremos com bastante frequência. Então, vamos nos familiarizar com isso também. Um fluxo é um processo que indica um dispositivo no qual você está executando as operações de entrada e saída. Em outras palavras, o fluxo pode ser representado como origem ou destino de caracteres de comprimento não especificado com base em sua função.
ifstream, ofstream e fstream formam o conjunto de métodos de manipulação de arquivos em C++. Uma breve descrição desses três objetos –

- ofstream – Em C++, ofstream é usado para criar e escrever em arquivos. Significa o fluxo do arquivo de saída.
- ifstream – Os programadores usam ifstream para ler arquivos. Significa o fluxo do arquivo de entrada.
- fstream – fstream pode ser dito como uma combinação de ofstream e ifstream. Ele é usado para criar, ler e gravar arquivos.
Cada um deles ajuda a gerenciar arquivos de disco e, portanto, é projetado especificamente para gerenciar arquivos de disco.
Estas são as operações usadas no manuseio de arquivos em C++ –
- Criando um arquivo: open()
- Lendo dados: read()
- Escrevendo novos dados: write()
- Fechando um arquivo: close()
Deve ler: As 8 principais ideias de projetos em C++
Vamos discuti-los completamente para entender como funciona a manipulação de arquivos em C++ –
- Abrindo um arquivo
Antes de poder agir no arquivo, seja leitura ou gravação, você precisa abri-lo primeiro. Objetos ofstream ou fstream podem ser aplicados para iniciar um arquivo para gravação. Da mesma forma, o objeto ifstream pode ser usado se você quiser ler o arquivo.
Você pode usar os seguintes procedimentos para abrir um arquivo –
- No momento da criação do objeto, ignore o nome do arquivo.
- Ou você pode usar a função open(). É um membro se objetos ifstream, ofstream, fstream.
Por exemplo
void open(const char *nameofthefile, ios::openmode mode);
O primeiro argumento acima define o nome e o local do arquivo que você deseja abrir. O segundo argumento especifica o método pelo qual seu arquivo de destino deve ser aberto.
Aqui estão a bandeira e a descrição do modo -
- ios::app – Modo Anexar. Todas as saídas para esse arquivo serão anexadas ao final.
- ios::in – Abre um arquivo para leitura.
- ios::ate – Abra um arquivo para saída e mova o controle de leitura/gravação para o final do arquivo.
- ios::out – Abre um arquivo para escrita.
- ios::trunc – Se o arquivo já existir, seu conteúdo será truncado antes de abrir o arquivo.
Você pode criar vários valores usando os modos acima usando o OR. Por exemplo, se você deseja abrir um arquivo para leitura ou escrita, use-

fstream novo arquivo;
newfile.open (“arquivo.dat”, ios::out | ios::in );
Da mesma forma, se você deseja abrir um arquivo no modo de gravação e deseja truncá-lo se já existir –
ofstream novo arquivo;
newfile.open (“arquivo.dat”, ios::out | ios::trunc );
- Escrevendo um arquivo
Ao trabalhar em um arquivo de programação C++, use o objeto ofstream ou fstream junto com o nome do arquivo. Seria melhor usar o operador de inserção de fluxo (<<) para gravar informações em um arquivo.
#include <iostream>
#include <fstream>
Utilize o namespace std;
int main(){
// Cria e abre um arquivo de texto
ofstream newFile(“nomedoarquivo.txt”);
//Escreve no arquivo
NewFile << “Aprender arquivos pode ser um desafio, mas o resultado é satisfatório o suficiente!”;
//Fecha o arquivo
NewFile.close();
}
- Lendo um arquivo
Para ler um arquivo de programação C++, você usa o objeto fstream ou ifstream. Caso você queira ler o arquivo linha por linha, e imprimir o conteúdo do arquivo, use um loop while junto com a função getline().
Para ler informações de um arquivo, você precisa usar o operador de extração de fluxo (>>).
Exemplo
// Construir uma string de texto, que é gerenciada para gerar o arquivo de texto
string novoTexto;
// Lê do arquivo de texto
ifstream newReadFile(“nomedoarquivo.txt”);
// Agora use um loop while junto com a função getline() para ler o arquivo linha por linha
while (getline (MyReadFile, myText)) {
// Saída do texto do arquivo
cout << meuTexto;
}
//Fecha o arquivo
MeuReadFile.close();
- Fechando um arquivo
Por padrão, quando um programa C++ fecha, ele expulsa todas as equipes, libera toda a memória designada e conclui todos os arquivos abertos. Mas é considerado uma prática saudável em termos de manipulação de arquivos em C++ que se deve fechar todos os arquivos abertos antes do término do programa. Ele também limpa o espaço desnecessário.

Esta é a sintaxe padrão para a função close(). É um membro dos objetos fstream, ifstream e ofstream.
void fechar();
Leia também: Ideias de projetos de estrutura de dados
Conclusão
Isso concluiu a lição sobre como você pode manipular arquivos em C++ . Lembre-se, C++ é uma das linguagens mais predominantes no mundo da programação para criar softwares técnicos e comerciais.
Portanto, quanto mais você entende, mais você pode explorar usando essa linguagem versátil . Se você estiver interessado em aprender mais e precisar de orientação de especialistas do setor, confira o Programa de Desenvolvimento de Software Full-Stack do UpGrad & IIIT Banglore's Executive PG Program .
