std::basic_ios<CharT,Traits>:: eof
|
bool
eof
(
)
const
;
|
||
Devuelve
true
si el flujo asociado ha alcanzado el fin de archivo. Específicamente, devuelve
true
si
eofbit
está establecido en
rdstate()
.
Consulte
ios_base::iostate
para la lista de condiciones que establecen
eofbit
.
Contenidos |
Parámetros
(ninguno)
Valor de retorno
true si ha ocurrido un fin de archivo, false en caso contrario.
Notas
Esta función solo reporta el estado del flujo establecido por la operación de E/S más reciente; no examina la fuente de datos asociada. Por ejemplo, si la operación de E/S más reciente fue un
get()
que devolvió el último byte de un archivo,
eof()
devuelve
false
. El siguiente
get()
falla al leer cualquier cosa y establece el
eofbit
. Solo entonces
eof()
devuelve
true
.
En el uso típico, el procesamiento del flujo de entrada se detiene ante cualquier error.
eof()
y
fail()
pueden entonces utilizarse para distinguir entre diferentes condiciones de error.
Ejemplo
#include <cstdlib> #include <fstream> #include <iostream> int main() { std::ifstream file("test.txt"); if (!file) // operator! is used here { std::cout << "File opening failed\n"; return EXIT_FAILURE; } // typical C++ I/O loop uses the return value of the I/O function // as the loop controlling condition, operator bool() is used here for (int n; file >> n;) std::cout << n << ' '; std::cout << '\n'; if (file.bad()) std::cout << "I/O error while reading\n"; else if (file.eof()) std::cout << "End of file reached successfully\n"; else if (file.fail()) std::cout << "Non-integer data encountered\n"; }
Véase también
La siguiente tabla muestra el valor de basic_ios accesores ( good() , fail() , etc.) para todas las combinaciones posibles de ios_base::iostate flags:
| ios_base::iostate indicadores |
basic_ios
accesores
|
|||||||
eofbit
|
failbit
|
badbit
|
good() | fail() | bad() | eof() | operator bool | operator! |
| falso | falso | falso | verdadero | falso | falso | falso | verdadero | falso |
| falso | falso | verdadero | falso | verdadero | verdadero | falso | falso | verdadero |
| falso | verdadero | falso | falso | verdadero | falso | falso | falso | verdadero |
| falso | verdadero | verdadero | falso | verdadero | verdadero | falso | falso | verdadero |
| verdadero | falso | falso | falso | falso | falso | verdadero | verdadero | falso |
| true | false | true | false | true | true | true | false | true |
| verdadero | verdadero | falso | falso | verdadero | falso | verdadero | falso | verdadero |
| verdadero | verdadero | verdadero | falso | verdadero | verdadero | verdadero | falso | verdadero |
|
comprueba el fin de archivo
(función) |