// Programma per la copia di un file di testo in un vettore
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;
int main()
{ char filename[40];
cout << "\n\t\tCopia di un file di testo in un vettore\n" << endl;
cout << "Nome del file: ";
cin.getline(filename, 40);
// Apertura del file
ifstream file(filename);
if(file) { // se il file esiste
// Si posiziona in fondo al file
file.seekg(0, ios::end);
// Legge il numero di byte del file
unsigned dim = file.tellg();
if(dim) {
// Alloca lo spazio per contenere il file
char *testo = new char[dim];
// Riporta il puntatore di posizione all'inizio del file
file.seekg(0);
// Copia il contenuto del file nel vettore testo
unsigned i = 0;
char c;
do if( file.get(c) )
testo[i++] = c;
while( !file.eof() );
// Chiusura del file
file.close();
// Visualizzazione del contenuto del vettore
for(unsigned j = 0; j < i; j++)
cout << testo[j];
cout << endl;
// Libera la memoria allocata
delete[] testo;
}
else cerr << "File vuoto!" << endl;
}
else cerr << "File inesistente!" << endl;
system("pause");
}
Programma per la copia di un file di testo in un array di char
Utilizzo della libreria fstream.