La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

I FILES AD ACCESSO SEQUENZIALE

Presentazioni simili


Presentazione sul tema: "I FILES AD ACCESSO SEQUENZIALE"— Transcript della presentazione:

1 I FILES AD ACCESSO SEQUENZIALE

2 Lavoreremo con files di testo.
I files I files sono aggregati di dati o istruzioni che possono essere acceduti mediante un identificatore comune. Sono memorizzati nelle memorie secondarie e gestiti dal sistema operativo. Lavoreremo con files di testo.

3 I files In C sono gestiti dalla libreria standard di IO. Il nome di un file è un puntatore alla prima posizione di memoria in cui è allocato il contenuto del file. Un puntatore a file si dichiara come: FILE * fp;

4 Per aprire un file in C è necessario usare l’istruzione
Apertura di un file Per effettuare qualunque operazione di lettura, scrittura o modifica del contenuto di un file è necessario prima di tutto aprirlo (crearlo se non esiste). Per aprire un file in C è necessario usare l’istruzione fp=fopen(‘‘nome_file’’, ‘‘modalità’’);

5 fp=fopen(‘‘nome_file’’, ‘‘modalità’’);
Apertura di un file fp=fopen(‘‘nome_file’’, ‘‘modalità’’); fp è un puntatore al file che ci indicherà il suo inizio. Vale NULL in caso di errore di apertura. nome_file è il nome del file che deve essere indicato con l’estensione. Modalità Codice Azione r read (sola lettura) w write (sola scrittura) a append (aggiunta in coda)

6 fp=fopen(‘‘prova.txt’’, ‘‘w’’);
Apertura di un file ATTENZIONE! fp=fopen(‘‘prova.txt’’, ‘‘w’’); Un file aperto in modalità sola scrittura se non esiste viene creato se esiste viene svuotato del suo contenuto file.c

7 fp=fopen(‘‘nome_file’’, ‘‘modalità’’);
Apertura di un file fp=fopen(‘‘nome_file’’, ‘‘modalità’’); Modalità Codice Azione r+ lettura e scrittura w+ scrittura e lettura a+ lettura e append Ogni operazione di lettura o scrittura su file incrementa di una riga la posizione dell’indicatore di posizione.

8 fclose(puntatore_a_file);
Chiusura di un file I files vengono automaticamente chiusi al termine dell’esecuzione del programma. In caso di necessità è possibile chiudere prima il file attraverso l’istruzione: fclose(puntatore_a_file); E’ bene chiudere il file quando il programma non deve più utilizzarlo.

9 I files ad accesso sequenziale
Nei files ad accesso sequenziale i dati sono acceduti scorrendo tutti i dati finché non viene trovato il dato desiderato. Nei files ad accesso sequenziale i dati inseriti possono essere strutturati in modo diverso e quindi non si crea un sistema omogeneo di record.

10 I files ad accesso sequenziale feof(puntatore_a_file);
La fine dei file è segnalata da EOF (End of File) che, nei diversi SO, corrisponde a diverse sequenze di caratteri. La funzione feof(puntatore_a_file); segnala la fine fisica del file e restituisce VERO (un numero diverso da 0) se il file è finito.

11 Scrittura file ad accesso sequenziale
Dopo aver aperto il file in modalità scrittura o append, è possibile inserire dei dati attraverso la funzione fprintf(punt_a_file, “formato di controllo”, variabile); Lettura file ad accesso sequenziale Dopo aver aperto il file in modalità lettura, è possibile leggere i dati contenuti nel file attraverso la funzione fscanf(punt_a_file, “formato di controllo”, &variabile);

12 Lettura e scrittura file ad accesso sequenziale
Esempio: main() {FILE * fp; char *nome=“Mario”; int voto = 30; if (fp=fopen(“test.txt”,w+)) {fprintf(fp, %s %d, nome, voto); rewind(fp);  riporta il puntatore all’inizio del file fscanf(fp, “%s %d”, nome, &voto);} else printf(“Errore in apertura”);}


Scaricare ppt "I FILES AD ACCESSO SEQUENZIALE"

Presentazioni simili


Annunci Google