Ben ritrovati iTechnoFans, in questa guida vi spiegheremo, come promesso, le varie modalità di apertura di un File di testo, e alcune funzioni di lettura/scrittura.

impariamo a programmare

Ebbene si, un file di testo può essere aperto in varie modalità:

  • Crea in modalità scrittura: w
  • Apre in modalità lettura: r
  • Apre in modalità append (possibilità di aggiungere ulteriori dati senza che quelli pre-esistenti vengano eliminati): a
  • Apre in modalità letturascrittura: r+
  • Crea in modalità letturascrittura: w+

Quindi in breve, se vorremo creare un file di testo in scrittura, l’istruzione sarà:

nome=fopen(“NomeFisico.txt”,”w”);

Se invece vorremo aprirlo in lettura:

nome=fopen(“NomeFisico.txt”,”r”);

Vediamo ora alcune istruzioni di lettura/scrittura:

Funzioni per leggere da file:

fscanf(nomefile,”%c”,&carattere);

fprintf(nomefile,”%c”,carattere);

Queste funzioni consentono di leggere o scrivere un dato (o più), specificando il tipo di dato appunto da leggere/scrivere.

Parametri:

  • nome file: nome logico del file;
  • “%c”: indica il tipo di carattere che andiamo a leggere, e in questo caso si tratta di un carattere
  • &carattere: è il nome della variabile (di tipo char). La & serve per passare alla funzione l’indirizzo della variabile a cui si fa riferimento. Questa la si usa solo nella funzione di lettura perchè si trasferiscono una serie di dati da memoria di massa a memoria centrale, e la funzione necessita dell’indirizzo di memoria della variabile. Vedetela un po’ come un limite della funzione.

fgets(stringa,10,nomelogico)

fputs(stringa,nomelogico)

Questa funzione consente di leggere o scrivere una stringa da/su file.

Parametri:

  • nome della stringa da leggere;
  • Lunghezza della stringa da leggere; (nel caso della fgets)
  • nome logico del file;

carattere=fgetc(nomelogico)

fputc(carattere,nomelogico)

Questa funzione consente di leggere un singolo carattere dal file

Parametri:

  • carattere: nel caso della fgets rappresenta la variabile all’interno della quale finirà il carattere letto, mentre nel caso della fputs, è la variabile da cui la funzione attingerà il carattere da scrivere;
  • nomelogico: nome logico del file;

Ecco l’esempio di una semplice funzione che legge 10 numeri fa file, e ne calcola la somma, restituendola in uscita.

Cattura