Come leggere un file in ANSI C

September 6

Come leggere un file in ANSI C


Una delle prime cose che si imparano come programmatore C è come leggere dati da un file. Anche se è stato sviluppato nel 1972, il linguaggio di programmazione C è ancora comunemente usato oggi, soprattutto perché permette al programmatore di sviluppare applicazioni di alto livello pur essendo in grado di controllare i singoli bit di informazione in caso di necessità. Scrivere un programma per leggere un file di testo in pochi passi.

istruzione

1 Digitare quanto segue per includere il "ansi_c.h" file di intestazione nella prima riga del file di origine:

includere <ansi_c.h>

2 Digitare quanto segue in un nuovo progetto "ANSI C" per definire la funzione "readFile":

int readFile (const char * filePathName, char ** resultsRead)

{

3 Digitare quanto segue per aprire il file:

int sizeOfFile = 0;

FILE * filePointer = fopen (filePathName, "RB");

if (filePointer == null)

{

* ResultsRead = NULL;

tornare -999;

}

4 Digitare la seguente per leggere il contenuto del file:

fseek(filePointer, 0, SEEK_END);

sizeOfFile = ftell (filePointer);

fseek (filePointer, 0, SEEK_SET);

* ResultsRead = (char *) malloc (sizeOfFile + 1);

5 Digitare la seguente per controllare gli errori durante la lettura del file:

if (sizeOfFile != fread(*resultsRead, sizeof(char), sizeOfFile, filePointer))

{

gratis (* resultsRead);

tornare -999;

}

6 Digitare quanto segue per chiudere il contenuto del file e file di ritorno:

fclose(filePointer);

(* ResultsRead) [sizeOfFile] = 0;

tornare sizeOfFile;

}

7 Digitare quanto segue per definire la funzione "main ()" nel file di origine:

int main ()

{

Digitare la seguente per dichiarare le variabili:

char *dataRead;

int sizeOfFile;

int characterCntr = 0;

8 Inserire il seguente per chiamare la funzione "readFile" creato in precedenza:

sizeOfFile = readFile("C:\\readData.txt", &dataRead);

if (sizeOfFile & lt; 0)

{

puts ( "la lettura dei dati di errore nel file");

ritornare 1;

}

9 Inserire il seguente per scorrere i contenuti nel file, visualizzarli e chiudere la funzione:

while (sizeOfFile > 0)

{

putchar (dataRead [characterCntr]);

characterCntr ++;

sizeOfFile--;

}

return 0;

}