Ustalenie trybu otwarcia pliku

Ustalanie trybu otwarcia pliku ma sens np. gdy chcemy dołączyć dane do już istniejącego pliku, a nie tworzyć go od nowa. Dostępne są następujące specyfikatory trybu otwarcia pliku:

app Otwarcie pliku do dopisywania, dane dołączane są na końcu pliku
ate Otwarcie pliku z ustawieniem wskaźnika plikowego na końcu pliku
in Otwarcie pliku tylko do odczytu (tryb domyślny dla klasy ifstream)
out Otwarcie pliku tylko do zapisu (tryb domyślny dla klasy ofstream)
binary Otwarcie pliku w trybie binarnym. Pliki obsługiwane za pomocą klas ifstream i ofstream otwierane są domyślnie w trybie tekstowym, czego konsekwencją jest specyficzne traktowanie znaków końca wiersza. Podczas odczytu plików w trybie tekstowym kończące wiersz pary znaków CR (kod 13) i LF (kod 10) tłumaczone są na pojedyncze znaki LF, natomiast podczas zapisu dokonywana jest konwersja odwrotna. W trybie binarnym konwersja nie jest wykonywana.
trunc Otwarcie pliku ze zniszczeniem jego poprzedniej zawartości. Tryb ten jest domyślny, o ile nie został użyty specyfikator app lub ate.

Powyższe specyfikatory mogą być łączone, np:

ofstream outfile("test.dat", ios::app | ios::binary);

otwiera plik do dopisywania w trybie binarnym. Należy zwrócić uwagę, że specyfikatory app i binary są poprzedzone nazwą klasy ios i operatorem zakresu :: co wynika z faktu, iż stałe definiujące specyfikatory dostępu są polami klasy ios, a zatem można się do nich odwoływać wyłącznie za pośrednictwem tej klasy.