Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Schedule::loadFile(std::string fileName)
- {
- int temp;
- clear();
- try
- {
- std::ifstream file(fileName);
- auto old = file.exceptions();
- file.exceptions(std::ifstream::failbit | std::ifstream::badbit | std::ifstream::eofbit);
- file.exceptions(old);
- while(file.read(reinterpret_cast<char*>(&temp), sizeof(temp)))
- {
- file.exceptions(file.failbit | file.badbit | file.eofbit);
- switch(temp)
- {
- case Direction::Type::D_FORWARD:
- file.read(reinterpret_cast<char*>(&temp), sizeof(temp));
- this->addForward(temp);
- break;
- case Direction::Type::D_EXIT:
- file.read(reinterpret_cast<char*>(&temp), sizeof(temp));
- this->addExit(temp);
- break;
- case Direction::Type::D_LEFT:
- this->addLeft();
- break;
- case Direction::Type::D_RIGHT:
- this->addRight();
- break;
- }
- file.exceptions(old);
- }
- }
- catch(std::ios_base::failure &fail)
- {
- // if (fail.code() == std::io_errc::
- // clear();
- std::cout << "Blad odczytu " << fileName << std::endl
- << fail.what() << std::endl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement