Array
(
)

Como ler um arquivo texto e imprimi-lo na tela?

Rscrj
   - 23 nov 2003

Boa Tarde,

Por acaso algum dos senhores saberia me dizer como faço para ler um arquivo texto.
O arquivo seria o seguinte:

10
2
5
1
8
56
321
25

Ao final eu teria que coloca-lo em ordem alfabética, essa última parte de ter que coloca-lo em ordem alfabética eu consegui fazer o que esta me faltando seria ler o arquivo.

Obrigado pela ajuda


Xco
   - 15 dez 2003

Assuntinho comprido, mas é fácil.....Vou partir do ponto que vc sabe usar o scanf e o printf, afinal, é uma das primeiras coisas que se aprende em C.
E, partindo disso, te apresento o fscanf e o fprintf, que fazem a mesma coisa, mas com arquivos....é assim:
FILE *f; //variavel que representa o arquivo
f=fopen(´arquivo.txt´,´r´);//abre o arquivo ´arquivo.txt´ para leitura
fscanf(f,´¬d´,&inteiro); //perceba o ´f´, indicando de onde ler
(....)
fclose(f); //Feche o arquivo

É isso, qualquer duvida é só postar.


Xco
   - 15 dez 2003

Assuntinho comprido, mas é fácil.....Vou partir do ponto que vc sabe usar o scanf e o printf, afinal, é uma das primeiras coisas que se aprende em C.
E, partindo disso, te apresento o fscanf e o fprintf, que fazem a mesma coisa, mas com arquivos....é assim:
FILE *f; //variavel que representa o arquivo
f=fopen(´arquivo.txt´,´r´);//abre o arquivo ´arquivo.txt´ para leitura
fscanf(f,´¬d´,&inteiro); //perceba o ´f´, indicando de onde ler
(....)
fclose(f); //Feche o arquivo

É isso, qualquer duvida é só postar.


Kao00
   - 31 mar 2004

Vê se isso ajuda:
#Código


#include <iostream>
include <string>
include <vector>
include <fstream>
include <algorithm>
include <cstdlib>
using namespace std;

int main()
{
string num;
vector<int> numeros;
ifstream input("arquivo.txt", ios::in);

if(!input){
cout << "Erro ao abrir arquivo..." << endl;
cin.get();
exit(1);
}

else{
cout << "Fora de ordem:\n";
while(!input.eof()){
getline(input, num);
cout << num << endl;
numeros.push_back(atoi(num.c_str()));
}

input.close();
}

sort(numeros.begin(), numeros.end());

cout << "\n\nEm ordem:\n";

for(int i = 0; i < numeros.size(); i++)
cout << numeros[i] << endl;

cout << endl;

return 0;
}


O arquivo usado pra testar o programa foi o mesmo que vc mostrou pra gente.