Fehlerabfrage bei ifstream
-
Hallo,
habe folgenden code:ifstream _in(str_IniPath.c_str()); int bracketpos; while(getline(_in,line)) {..... }Wie kann ich nun abfragen, ob _in nun tatsächlich str_IniPath oeffnen konnte?
(vgl. fopen(....))
danke
t. o.
-
Vielleicht mit is_open()?
-
Theresa O. schrieb:
Hallo,
habe folgenden code:ifstream _in(str_IniPath.c_str()); int bracketpos; while(getline(_in,line)) {..... }Wie kann ich nun abfragen, ob _in nun tatsächlich str_IniPath oeffnen konnte?
(vgl. fopen(....))
danke
t. o.ifstream _in(str_IniPath.c_str()); if(!_in) { std::cerr << "Cant open " << str_IniPath << std::endl; return; } int bracketpos; while(getline(_in, line)) { // ... } if(!_in.eof()) std::cerr << "Error reading from " << str_IniPath << std::endl;
-
std::ifstream reader; reader.exceptions ( std::ifstream::eofbit | std::ifstream::failbit | std::ifstream::badbit ); try { reader.open("some.file"); while(std::getline(reader, line) { //... } } catch(std::exception & e) { std::cerr << e.what() << '\n'; }
-
Danke für die Hilfe.
Aber wo kann ich mir ifstream genauer ansehen?
Stichwort: std::ifstream::eofbit | std::ifstream::failbit | std::ifstream::badbit
Grüsse
T.O.