Você está na página 1de 2

Nova matéria de PSI sobre ficheiros

Ficheiros

A biblioteca iostream(i de input + o de output + stream), suporta o objeto cin


para ler e o objeto cout para escrever.

Agora pretendemos ler e escrever em ficheiros o que implica o uso da biblioteca


fstream(f de file + stream).
Esta biblioteca define 3 novos tipos de classes:

. ofstream(apenas para saída - "out to a file") Serve para criar, manipular e


escrever em ficheiros.

. ifstream(apenas para entrada - "in from a file")Serve para ler de ficheiros,


não serve para criar sem escrever.

. fstream(conjuga os dois tipos anteriores)Cria ficheiros, escreve e lê


informação dos mesmos.

Abrir e fechar um ficheiro

.Um ficheiro deve ser aberto pelo programa para ser


manipulado, a abertura do ficheiro implica, a atribuição de
um identificador que nos permita ter acesso aos seus dados.

Usando a função "open"


ofstream ficheiro;
ficheiro.open("teste.txt"); Abre para escrita o ficheiro teste.txt

Devemos fechar o ficheiro depois de ler e/ou escrever


ficheiro.close(); Fecha o ficheiro aberto

#include<iostream>
#include<fstream>
using namespace std;

int main()
{
int i;
string linha;
ofstream ficheiro;
ficheiro.open("teste.txt"); //Cria um ficheiro de saída que permite
escrever dados

for(i=1;i<=10;i++)
{
ficheiro<<"Linha: "<<i<<"\n"; //vou contar linhas e enviar para o
ficheiro que criei
}

ficheiro.close(); //Fecho o ficheiro;

ifstreamcficheiro1;
ficheiro.open("teste.txt"); //Abro o ficheiro em modo leitura:

if(!ficheiro1.si_open()) //se o ficherio não abre;


{
cout<<"Não foi possivel abrir o ficheiro\n";
}
else
{
While(true) //ciclo infinito;
{
if(ficheiro1.eof())
break; //se o ficheiro chegou ao fim sai do ciclo;
else
{
getline(ficheiro1,linha); //lê dados do ficheiro linha a
linha;
cout<<linha<<"\n";
}
}
}
system("pause");
return 0;
}

nota=atoi(linha.c_str()); //converte a linha (string) para o número nota

nota2=atoi(linha2.c_str()); //converte a linha 2 para a nota 2

media=(nota+nota2)\2;

Você também pode gostar