Programowanie i algorytmy

Metoda is_open()

powrót

Czy udało się otworzyć plik?

Przed wykonaniem jakiejkolwiek operacji na pliku, warto upewnić się, że został on prawidłowo otwarty. Plik może zostać nieotwarty z wielu powodów np. jeśłi:

  • podamy nieprawidłową ścieżkę do pliku
  • plik jest używany przez inny program
  • brak dostępu
  • plik nie istnieje
  • itp.

Do skontrolowania tej czynności służy metoda o nazwie is_open(). Zwraca ona true, jeśli plik został otwarty i false w przeciwnym razie.

Przykład.

#include<iostream>
#include<fstream>
 
using namespace std;
 
int main()
{
  int a, b;
  ifstream odczyt("dane.txt");
 
  if(odczyt.is_open())
  {
    odczyt>>a>>b;
    cout<<"Suma wczytanych liczb wynosi: "<<a+b;
    cin.get();
    odczyt.close(); //zamknięcie pliku
  }
  else
    cout<<"Nie udało się otworzyć pliku";
 
  cin.get();
 
  return 0;
}