EOF in C ++

EOF in C ++

Nella gestione dei file, non sappiamo quanti dati sono archiviati nel file. Poiché l'entità dei dati nel deposito è per lo più sconosciuta, come possiamo leggere il file in quel caso? Quando non sappiamo quanti dati contiene il file, utilizziamo il metodo EOF () per leggere un file. Il metodo EOF () è "fine del file" che legge il file fino a quando il controllo raggiunge la fine del file. Questa metodologia è molto adatta per presentare i dati dei file. Le cose che sappiamo sui file sono il tipo di dati di file e lo stile di formattazione dei dati memorizzati. La funzione EOF () ci consente di determinare quando il file ha raggiunto la sua fine.

Eof () è un metodo costante di tipo bool che restituisce vero quando viene raggiunta la fine del file e restituisce false quando ci sono ancora dati da leggere. È un metodo di input-output Stream Class (iOS) che legge i dati di un file fino alla fine.

Sintassi:

bool eof () const;


Questo metodo è un metodo booleano di tipo costante, il che significa che non può essere modificato. O restituisce vero o falso. Questa funzione non ha parametri.

Tipo di ritorno:

Quando restituisce "vero", significa che la fine viene raggiunta. Quando restituisce "falso", significa che la fine non è ancora incontrata.

Usa eof () per leggere un file già creato

Il programma legge i dati da un file di testo. Quando raggiunge la fine, visualizza un messaggio. Per fare tutto questo, chiamiamo la funzione EOF ().

Crea un file:

Prima di tutto, crea un file di testo, "Esempio.TXT". Aggiungi un po 'di contenuto e quindi salva il file. Questo file deve essere archiviato in una cartella simile al codice C ++.


Codice:

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

IfStream ist ("Esempio.TXT");
Char Ch;
mentre (ist.get (ch))
cout << ch;
if (ist.eof ())
cout << "[EoF reached]\n";
altro
cout << "[Error Reading]\n";
ist.vicino();
restituzione 0;


Ora iniziamo a programmare. Importa la libreria per utilizzare le funzioni di input e output di questa libreria. Quindi, importa come flusso di file. Importiamo questa libreria in modo da poter accedere ai suoi metodi. Chiama il metodo principale (). Quindi, definisci "ifstream" che è il flusso di input. Crea il suo oggetto e dai la posizione di un file di testo che abbiamo creato in precedenza o semplicemente scriviamo il nome di quel file. Quando il file di codice e il file di testo si trovano nella stessa cartella, menzioniamo solo il nome del file con la sua estensione. Definire una variabile tipo di carattere, "CH". Questa variabile ottiene i dati dalla stringa. Usa il ciclo "while" per leggere costantemente i dati del file fino a raggiungere la fine. All'interno del ciclo "while", utilizzare il comando "cout" per stampare i dati. Dopo aver visualizzato l'intero dati del file, impostare la condizione "if". Se il flusso di input "IST" raggiunge la fine del file, visualizzare il messaggio "EOF raggiunto". Altrimenti, eseguire la parte "else". Stampa un messaggio di errore "Lettura di errore" all'interno della porzione "else". Quindi, chiudi il file chiamando la funzione Close ().

Produzione:

Hello World 360 [EOF raggiunto]

Ottieni i dati dal file

Spieghiamo come possiamo ottenere i dati da un file e controllare la fine di un file usando EOF ().

Crea un file:

Ora, crea un file di testo chiamato "Esempio2.TXT". Assicurati di salvare sia i file di testo che C ++ nella stessa cartella. Non causerà problemi durante l'accesso al file. Qui, scriviamo il nome di alcune città nel file. Salva e chiudi il file.


Codice:

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

Char City_Names [15];
File ifStream ("Esempio2.TXT");
Se(!file)

cout<<"Error while opening";
uscita (1);

cout<<"List of Cities in file : \n";
Mentre(!file.eof ())

File >> City_Names;
cout<
file.vicino();
restituzione 0;


Nel codice C ++, importa due librerie - e . Dopo aver usato lo spazio dei nomi standard, invoca il metodo principale () e dichiara l'array di tipo di carattere "City_Names". Quindi, imposta la dimensione dell'array che ottiene l'array di caratteri dal file di testo. Crea un oggetto "File" del flusso di file di input "ifstream" e fornire il nome del file di testo che è "Esempio2.TXT". Ora, usa l'istruzione "if" per verificare se un file definito si sta aprendo o meno. Stampa un messaggio di errore se il file non si aprirà. Dichiarazione esterna "if", impiega il comando "cout" per mostrare un testo "elenco di città in file". Inoltre, utilizzare un ciclo "while" per iterare nel file per ottenere i dati. Loop fino a quando il file non viene raggiunto alla fine. Per controllare la fine del file, chiamare il metodo EOF (). Ottieni i dati del file all'interno del ciclo "while" e memorizzali nell'array di caratteri "City_Names". Quindi, visualizza quell'array.

Il file ottiene tutto il contenuto che archiviamo nel "Esempio2.txt ”file di testo e visualizza i dati contemporaneamente. Chiudi il file esterno. La chiusura di un file è importante per impedire al file di eventuali danni.

Produzione:

Elenco delle città nel file:
Lahore
Karachi
Multan

Codice per acquisire i dati dall'utente

In questo esempio, acquisiamo i dati dell'utente e li inseriamo in un file di testo. Quindi, visualizziamo i dati di quel file sulla console. Per leggere i dati da un file, utilizziamo anche eof () che ci informa quando viene raggiunta la fine del file.

Crea un file vuoto:

Innanzitutto, un file vuoto, "Esempio3.txt ”, viene creato e salvato in una cartella. In questo file vuoto, archiviamo i dati che l'utente ci fornisce. Quindi, quei dati vengono letti.


Codice:

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

nomi dei char [15];
Ofstream out ("Esempio3.TXT");
ifstream in ("Esempio3.TXT");
per (int i = 0; i<3;i++)

cout<<"Enter Name : ";
ottiene (nomi);
cout<
fuori.vicino();
cout<<"List of Names is : ";
cout<Mentre(!In.eof ())

In.getline (nomi, 100);
cout<
In.vicino();
restituzione 0;


La parte più essenziale del codice è includere le biblioteche. Nella funzione principale (), definire un array di caratteri di dimensioni 15. Crea un oggetto "out" del flusso di file di output "Of Stream". Fornisce il percorso/nome del file di testo vuoto. Quindi, crea un oggetto "in" del flusso di file di input "ifstream". Usa il ciclo "per" per ottenere la stringa dall'utente. Qui, stampa il messaggio "Invio nome:". Chiama il metodo Get (); Ottiene la stringa di nomi dall'utente e l'oggetto "out" di Stream apre il file per la scrittura. Questo oggetto di Stream scrive i nomi nel file di testo. Al di fuori del ciclo "per", chiudere l'oggetto "out" di Stream perché abbiamo finito di scrivere. Mostra l'elenco dei nomi è: "Testo sullo schermo. Inoltre, usa il ciclo "while" e definisci la sua condizione. Leggi i dati dal file fino a quando non viene raggiunta la terminazione di un file. Impiega la funzione getline () in modo da ottenere le righe dal file di testo. Visualizza quelle righe sulla console. Al di fuori del ciclo "while", invoca il metodo Close () del flusso di file di input "in".

Produzione:

Immettere il nome: Halibi
Immettere il nome: John
Immettere il nome: Nike
L'elenco dei nomi è:
Halibi
John
Nike


Dopo aver memorizzato i dati:


Dopo aver ottenuto i nomi dall'utente ed eseguito il codice C ++, apriamo il file vuoto che abbiamo creato. Qui, vedremmo tutti i nomi. Dopo l'esecuzione del codice, questi nomi sono archiviati in "Esempio3.txt ”File di testo.

Conclusione

Abbiamo discusso del metodo EOF () in questo articolo. EOF è la fine di un file che viene utilizzato durante la lettura di un file. Possiamo determinare quando il file è terminato chiamando il metodo EOF (). L'articolo spiega l'argomento su EOF in C ++ con l'aiuto di codici diversi in cui abbiamo creato il file di testo, inserito i dati nel file e quindi leggere tali dati dal file. Il metodo eof () è un metodo bool, è vero o falso.