File e flussi
Un programma comunica con l'ambiente di destinazione tramite la lettura e scrittura dei file. Un file può essere:
Un set di dati che è possibile leggere e scrivere più volte.
Un flusso di byte generati da un programma (ad esempio una pipeline).
Un flusso di byte ricevuti da un dispositivo periferico o inviati a un dispositivo periferico.
Gli ultimi due elementi sono file interattivi. I file sono in genere i mezzi principali tramite i quali interagire con un programma. È possibile modificare tutti questi tipi di file nello stesso modo: chiamando le funzioni di libreria. Includere l'intestazione standard STDIO.H per dichiarare la maggior parte di queste funzioni.
Prima di poter eseguire molte delle operazioni in un file, il file deve essere aperto. Aprire un file comporta la sua associazione a un flusso, una struttura di dati all'interno della libreria standard C che maschera molte differenze tra file di vari tipi. La libreria mantiene lo stato di ogni flusso in un oggetto di tipo FILE.
L'ambiente di destinazione apre tre file prima dell'avvio del programma. È possibile aprire un file chiamando la funzione fopen
di libreria , _wfopen
con due argomenti. La fopen
funzione è stata deprecata, usare fopen_s
invece . _wfopen_s
Il primo argomento è un nome file. Il secondo argomento è una stringa C che specifica:
Se si desidera leggere i dati dal file o scrivere dati nel file o entrambe le cose.
Se si intende generare nuovi contenuti per il file (o creare un file se non esiste in precedenza) o lasciare il contenuto esistente.
Mentre scrivere in un file può alterare il contenuto esistente oppure potrebbe semplicemente aggiungere byte alla fine del file.
Se si desidera modificare un flusso di testo o un flusso binario.
Una volta aperto il file con successo, è possibile determinare se il flusso è orientato ai byte (un flusso di byte) o orientato ai caratteri wide (un flusso di caratteri wide). Un flusso inizialmente è privo di associazione. Chiamare alcune funzioni in modo che operino sul flusso lo rendono orientato ai byte, mentre altre funzioni lo rendono orientato ai caratteri wide. Una volta stabilito, un flusso mantiene l'orientamento fino a quando non viene chiuso da una chiamata a fclose
o freopen
.
© 1989-2001 di P.J. Plauger e Jim Brodie. Tutti i diritti sono riservati.
Vedi anche
Flussi di testo e binari
Flussi di byte e wide
Controllo dei flussi
Stati di flusso